Wie kann ich 7-Zip-Archive aus meiner C # -Konsolenanwendung erstellen? Ich muss in der Lage sein, die Archive mit dem regulären, weit verbreiteten 7-Zip- Programm zu extrahieren .
Hier sind meine Ergebnisse mit den Beispielen als Antworten auf diese Frage
- "Shelling out" für 7z.exe - dies ist der einfachste und effektivste Ansatz, und ich kann bestätigen, dass er gut funktioniert . Wie workmad3 erwähnt , muss ich nur garantieren, dass 7z.exe auf allen Zielcomputern installiert ist, was ich garantieren kann.
- 7Zip in der Speicherkomprimierung - Dies bezieht sich auf das Komprimieren von Cookies "im Speicher" vor dem Senden an den Client. Diese Methode scheint etwas vielversprechend. Die Wrapper-Methoden (das LZMA SDK umschließen ) geben den Rückgabetyp zurück
byte[]
. Wenn ich dasbyte[]
Array in eine Datei schreibe , kann ich es nicht mit 7-Zip (File.7z is not supported archive
) extrahieren . - 7zSharp Wrapper (auf CodePlex verfügbar ) - Dies umschließt das 7z exe / LZMA SDK . Ich habe in meiner App auf das Projekt verwiesen und einige Archivdateien erfolgreich erstellt, konnte die Dateien jedoch nicht mit dem regulären 7-Zip-Programm (
File.7z is not supported archive
) extrahieren . - 7Zip SDK alias LZMA SDK - Ich glaube, ich bin nicht klug genug, um herauszufinden, wie man das verwendet (weshalb ich hier gepostet habe) ... Beispiele für Arbeitscodes, die das Erstellen eines 7zip-Archivs demonstrieren, das von der extrahiert werden kann reguläres 7zip Programm?
- CodeProject C # (.NET) -Schnittstelle für 7-Zip-Archiv-DLLs - unterstützt nur das Extrahieren aus 7zip-Archiven ... Ich muss sie erstellen!
- SharpZipLib - Laut FAQ unterstützt SharpZipLib 7zip nicht.