WinRar Komponente? oder ähnliches
Hallo
Ich suche eine Komponente mit der ich in der Lage bin *.rar Dateien aus zB.Text Dateien zu packen. Die Rar Komponente von Weazy packt offenbar keine Dateien, oder irre ich mich. Kann mir jemand helfen? |
Re: WinRar Komponente? oder ähnliches
Du kannst die Unrar.dll ansteuern, dafür gibt's schon verschiedene Units. Die Forensuche hilft ;)
|
Re: WinRar Komponente? oder ähnliches
Ich bin Anfänger. Eine dll ansteuern übersteigt meine Fähigkeiten.
|
Re: WinRar Komponente? oder ähnliches
Eine kostenlose und gleichzeitig legale Methode RAR-Dateien zu erstellen gibt es nicht.
(Abgesehen von WinRAR in der Testversion) |
Re: WinRar Komponente? oder ähnliches
I'm sorry. Ich hab "entpacken" gelesen und nicht packen. Mit der Unrar.dll kannst Du sowieso nur entpacken. Ansonsten siehe Ronnys Aussage.
|
Re: WinRar Komponente? oder ähnliches
Schade! Dann muß ich mich mit zip oder anderen Archivern auseinandersetzen.
Ich hatte die Hoffnung mit rar arbeiten zu können da es eine sehr hohe Kompression hat. |
Re: WinRar Komponente? oder ähnliches
Hi,
7zip hat höhere Kompressionsraten und ist OpenSource. Es gibt div. Wrapper für die 7Zip DLL (u.a. in der JCL enthalten) Gruß Patrick |
Re: WinRar Komponente? oder ähnliches
7-Zip hat eine teilweise deutlich überlegene Kompression, das Format ist zudem komplett dokumentiert und frei, umfangreiche Programmierschnittstellen dazu gibt es ebenfalls und wenn ich mich nicht ganz täusche auch schon eine Komponente die das Packen/Entpacken mit 7-Zip kapselt. Such mal hier im Forum. Ich benutze WinRAR inzwischen immer seltener...
Edit: jaja, der rote Kasten :) |
Re: WinRar Komponente? oder ähnliches
7Zip habe ich bisher als dll Datei gefunden und auch als Programm mt Oberfläche.
Für die dll Datei fehlt mir das Wissen um sie anzusteuern. Kann mir vielleicht dabei noch jemand helfen? |
Re: WinRar Komponente? oder ähnliches
Hier gibt's eine Komponente dafür. Vielleicht lässt sich damit was anfangen. Ausprobiert hab ich diese selbst noch nicht.
|
Re: WinRar Komponente? oder ähnliches
Vielen Dank ich versuche mal diese Komponente zu installieren.
|
Re: WinRar Komponente? oder ähnliches
Die Installation dieser Komponente erfolgt problemlos. Aber das DemoProgramm :pale: :pale:
Hat vielleicht schon mal jemand damit gearbeitet und kann mir nen Tip geben, wie man Dateiverzeichnisse ohne OpenDialog Zipt?? |
Re: WinRar Komponente? oder ähnliches
Das Demo-Programm ist mehr ein Test der Komponente. Da wird auf LW C: ein Ordner angelegt (7zTest oder so ähnlich) der wohl zum aus/einpacken verwendet wird. (auspacken ganz sicher, packen müsste ich erst Zuhause nachschauen)
Fand die Demo aber ganz brauchbar (besser als nichts), um wenigstens die funktionsweise der Basis-Funktionen zu sehen. Bin aber vor ein paar Tagen nur so "drüber geflogen" |
Re: WinRar Komponente? oder ähnliches
Soweit wie ich das begriffen habe wird eine 7z Datei auf C: angelegt. Daraufhin gibt es zwei Möglichkeiten:
a) Es werden alle Dateien aus dem Verzeichnis \Demo gepackt b) Es könne Dateien über OpenDialog gepackt werden. Die Version über OpenDialog funktioniert einwandfrei. Punkt a funktioniert überhaupt nicht. Es müssen doch nur die Kommentarzeichen geändert werden. Oder sehe ich das falsch? |
Re: WinRar Komponente? oder ähnliches
Also das sollte man ja sofort sehen. Da hat sich in der Demo ein kleiner Fehler eingeschlichen, mit dem Ordnernamen.
In newarchiveClick() muss RootDir C:\Demo sein und Files.AddString('c:\demo\*.*'). Einer von beiden Ordnern hies \demo2, was falsch war (weis aber jetzt nicht mehr welcher). Files.AddString('c:\demo\*.*') fügt dann alle Dateien und Dateien in Unterordnern aus C:\Demo dazu |
Re: WinRar Komponente? oder ähnliches
Anbei der leicht bearbeitete Text der Demo
Delphi-Quellcode:
Bis zur Erstellung der 7z Datei funktioniert es. Ich finde keinen Fehler im Text. Dennoch hat die Archivdatei 0 Byte Größe. Was wohl darauf hindeutet, daß keine Dateien gepackt werden.
procedure TForm1.test7zdemoClick(Sender: TObject);
var i:integer; begin // opendialog1.InitialDir := 'c:\'; // if not opendialog1.Execute then exit; // kein Opendialog //Set archive filname sevenzip1.SZFileName := 'c:\testvcl1.7z'; //Set Volumesize // sevenzip1.VolumeSize := strtoint(volsize.text); //Set rootdir for recuresive folder (if wanted) sevenzip1.AddRootDir := 'c:\demo'; // If password7z.Text <> '' then Sevenzip1.Password := password7z.Text; //Clear filelist sevenzip1.Files.Clear; sevenzip1.Files.AddString('C:\Demo\*.*'); // for i := 0 to opendialog1.Files.count-1 do // sevenzip1.Files.AddString(opendialog1.Files[i]); //add files Sevenzip1.Add; // Show result //label1.caption := inttostr(i); end; Woran liegt das??? :( :( Vielleicht kann mir doch noch jemand helfen. |
Re: WinRar Komponente? oder ähnliches
Ich kann auch noch SQX empfehlen. Arbeite damit nur. Ist etwas unbekannt, hat aber gute Packraten.
Source mit dll und Delphi-Demo: www.sqx-archiver.org |
Re: WinRar Komponente? oder ähnliches
Schade!
das sich mit 7zip Komprimierung niemand weiter auskennt. Muß ich wahrscheinlich doch mit LHA Packen. LHA hat annähernd den gleichen Komprimierungsgrad wie 7zip, ist aber, weil Shareware, sehr teuer. |
Re: WinRar Komponente? oder ähnliches
Zitat:
Einfach lzma und Delphi (Lazarus) in Google eingeben. |
Re: WinRar Komponente? oder ähnliches
[/quote]
Es gibt aber eine Kombo für 7z ich habe auch für Lazarus eine 7z Library gefunden. Einfach lzma und Delphi (Lazarus) in Google eingeben.[/quote] Habe ich gesucht und leider nicht gefunden. In wie weit kann ich diese Komponente überhaupt im gewöhnlichen Delphi nutzen?? (Lazarus --> Delphi) |
Re: WinRar Komponente? oder ähnliches
Es gibt aber eine Kombo für 7z ich habe auch für Lazarus eine 7z Library gefunden.
Einfach lzma und Delphi (Lazarus) in Google eingeben.[/quote] Habe ich gesucht und leider nicht gefunden. In wie weit kann ich diese Komponente überhaupt im gewöhnlichen Delphi nutzen?? (Lazarus --> Delphi)[/quote] Der 2. Link in Google http://www.birtles.org.uk/programming/ |
Re: WinRar Komponente? oder ähnliches
War Tippfehler meinerseits habe izma getippt statt lzma.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz