none
Zippen ohne Dll RRS feed

  • Frage

  • Hallo
    ich hätte mal eine Frage
    Wie kann man Ohne Eine dll die ich mir runter laden muss zip dateien erstellen. Also eine datei z.b. test.exe zu test.zip machen und auch wieder entzippen

    und noch eine frage gibt es in visual basic eine funktion für die mathematische konstante pi?
    Samstag, 19. Dezember 2009 16:47

Antworten

  • Wenn es Dir darum geht ZIP Archive zu erstellen, dann findest Du dafür keine eingebaute Unterstützung im .NET Framework. System.IO.Compression.GZipStream komprimiert Daten zwar nach einem Zip Alghorithmus, das passende Zip Archiv müsstest Du jedoch noch selber drumherum bauen. Sonst hast Du allein eine .gz Datei, mit der kann zum Beispiel die eingebaute Shell ZipFolder Funktionalität nichts anfangen. Wenn Du nur eine einzige Datei komprimieren möchtest und diese auch hauptsächlich von Deiner Anwendung wieder dekomprimiert werden soll, wäre diese Variante sicher ausreichend.

    System.IO.Packaging.ZipPackage erstellt zwar ZIP Archive, ist aber sehr restriktiv, was die Wahl des URIs betrifft, da dieses Format vor allem für die Dokumentenformate Office Open XML, XPS und ähnlichen entworfen ist. Wenn dies bei Deinem Einsatzzweck keine Rolle spielt, wäre das ggf. eine Lösung für Dich.

    Ansonsten bleibt nur der Einsatz einer zusätzlichen Komponente, wie bspw. DotNetZip, die die komplette Funktionalität für den Umgang mit Zip Archiven bereitstellt.

    Thorsten Dörfler
    Microsoft MVP Visual Basic
    • Als Antwort markiert Warflay Sonntag, 20. Dezember 2009 10:24
    Samstag, 19. Dezember 2009 21:58
    Moderator
  • edit ich hab es mal mit der aufgabe -450+60*5 versucht aber da bekomm ich den fehler das es das falsche format hat der code lautet
    Dim result As Double = System.Convert.ToDouble(TextBox1.Text)


    Ganz so einfach ist das Berechnen von kompletten Formeln dann auch wieder nicht.

    VB.NET Expression Evaluator using CodeDom
    http://www.vbforums.com/showthread.php?t=397265


    Thorsten Dörfler
    Microsoft MVP Visual Basic
    Sonntag, 20. Dezember 2009 12:52
    Moderator

Alle Antworten

  • Hallo,

    zum Thema Zip - Dateien schau Dir den Namespace System.IO.Compression an. Dort gibt es die Klasse GZip.  Die Konstante PI findest Du in der Klasse System.Math.

    Schöne Grüße
    Oliver
    Samstag, 19. Dezember 2009 17:10
  • danke nur noch eine frage gibt es eine möglichkeit eine rechnung die in eine textbox eingageben wurde auszurechnen?
    Samstag, 19. Dezember 2009 18:40
  • Hallo Warflay,

    grundsätzlich ja, vegess aber bitte nicht die Eingabe in Deiner Textbox in ein System.Convert.ToInt zu verpacken, da Textboxeingaben Strings sind.

    Schöne Grüße
    Oliver
    Samstag, 19. Dezember 2009 19:27
  • nochmal zum zip wie geht das jetzt ich habe bei google nichts zu visual basic gefunden

    edit ich hab es mal mit der aufgabe -450+60*5 versucht aber da bekomm ich den fehler das es das falsche format hat der code lautet
    Dim result As Double = System.Convert.ToDouble(TextBox1.Text)

    Samstag, 19. Dezember 2009 19:58
  • Wenn es Dir darum geht ZIP Archive zu erstellen, dann findest Du dafür keine eingebaute Unterstützung im .NET Framework. System.IO.Compression.GZipStream komprimiert Daten zwar nach einem Zip Alghorithmus, das passende Zip Archiv müsstest Du jedoch noch selber drumherum bauen. Sonst hast Du allein eine .gz Datei, mit der kann zum Beispiel die eingebaute Shell ZipFolder Funktionalität nichts anfangen. Wenn Du nur eine einzige Datei komprimieren möchtest und diese auch hauptsächlich von Deiner Anwendung wieder dekomprimiert werden soll, wäre diese Variante sicher ausreichend.

    System.IO.Packaging.ZipPackage erstellt zwar ZIP Archive, ist aber sehr restriktiv, was die Wahl des URIs betrifft, da dieses Format vor allem für die Dokumentenformate Office Open XML, XPS und ähnlichen entworfen ist. Wenn dies bei Deinem Einsatzzweck keine Rolle spielt, wäre das ggf. eine Lösung für Dich.

    Ansonsten bleibt nur der Einsatz einer zusätzlichen Komponente, wie bspw. DotNetZip, die die komplette Funktionalität für den Umgang mit Zip Archiven bereitstellt.

    Thorsten Dörfler
    Microsoft MVP Visual Basic
    • Als Antwort markiert Warflay Sonntag, 20. Dezember 2009 10:24
    Samstag, 19. Dezember 2009 21:58
    Moderator
  • edit ich hab es mal mit der aufgabe -450+60*5 versucht aber da bekomm ich den fehler das es das falsche format hat der code lautet
    Dim result As Double = System.Convert.ToDouble(TextBox1.Text)


    Ganz so einfach ist das Berechnen von kompletten Formeln dann auch wieder nicht.

    VB.NET Expression Evaluator using CodeDom
    http://www.vbforums.com/showthread.php?t=397265


    Thorsten Dörfler
    Microsoft MVP Visual Basic
    Sonntag, 20. Dezember 2009 12:52
    Moderator