netfireman Geschrieben 28. April 2004 Geschrieben 28. April 2004 Hallo, ich habe ein Programm in dem eine XML-Datei erzeugt wird geschrieben. Diese Datei soll dann per Mail an einen PDA übermittelt werden und dort in ein weiters Programm importiert werden. Der PDA ruft die Mail über ein GSM Modul ab. Leider wird die XML Datei ca. 1,5 MB groß und das Dauert sehr lang. Nun wollte ich meinen Programm so ändern das die Datei Automatisch gepackt wird bei erstellen und auf dem PDA automatisch entpackt wird beim Importieren. Gibt es eine Möglichkeit aus VB.net heraus auf ein Packprogramm wie z.B. Winzip zuzugreifen?? Hat jemand vielleicht sogar ein Beispielprogramm? Gruß netfireman Zitieren
-roTekuGeL- Geschrieben 28. April 2004 Geschrieben 28. April 2004 mh also wie man auf ein Packprog zugreifen kann weiß ich nicht, aber mit der DynZIP komponente kannst du dir dein eigenes Packprog schreiben und steuern... Zitieren
dBaj Geschrieben 29. April 2004 Geschrieben 29. April 2004 Ich weiß, dass man WinRAR auch über die Komanndozeile ausfrufen kann. So könntest du nach dem Erstellen der XML-Datei, diese packen und verschiecken. Das Entpacken funktioniert auch über die Komandozeile. Wie das bei anderen Packprogrammen bspw. WinZIP & Co. aussieht weiß ich nicht, aber ich denke, dass man diese auch per Kommandozeile steuern kann. Zitieren
fireworker Geschrieben 29. April 2004 Geschrieben 29. April 2004 Mit WinAce geht entpacken so: Retval& = ShellExecute(Form1.hWnd, "open", "winace.exe", _ "x " & SourcePfad_und_FileName & " " & DestinationPfad, ProgramPfad, SW_HIDE) Zitieren
Argbeil Geschrieben 30. April 2004 Geschrieben 30. April 2004 Ich denke, am einfachsten ist es, wenn du die XML gar nicht auf die Platte schreibst, sondern mit der .NET eigenen DOM Komponente im Speicher aufbaust. Danach schickst du den String-Stream an die ziplib Komponente, die gibt's hier: :mod: http://www.sharpdevelop.com/OpenSource/SharpZipLib/Default.aspx So sollten von der Datei eigentlich nur noch ein paar KB übrig bleiben. Zitieren
Argbeil Geschrieben 30. April 2004 Geschrieben 30. April 2004 Mit WinAce geht entpacken so: Retval& = ShellExecute(Form1.hWnd, "open", "winace.exe", _ "x " & SourcePfad_und_FileName & " " & DestinationPfad, ProgramPfad, SW_HIDE) Das Shell Excecute funktioniert bei dotnet nicht, du könntest den Diagnostic Namespace zum ausführen verwenden. Die Frage ist aber ob rar auf dem PDA läuft, ausserdem würdest du damit die Plattformunabhängigkeit verlieren. Am besten du verwendest die ziplib, die sollte auch mit dem Compact Framework laufen und ist wesentlich schneller als ein externer Call. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.