//*****************************************************************************
// wenn als RAR gepackt werden soll, dann dies .....
if DLS.PACK = 'RAR' then begin
sLabel1.Visible := true; // Bitte warten ---- anzeigen
PATH := ExtractFilePath(ParamStr(0));
RarFilename := ini.ReadString('VERZ','tempSend','') + ZielTemp+'\'+EditPackName.Text;
TempPath := frmDLS.JamPathLabel_ZIEL.Path;
DATEILIST := '@'+ExtractFilePath(ParamStr(0))+'backup.lst';
// --------- Parameter für paramPack -------------------------------
// a : fügt die Dateien dem Archiv zu
// - r : rekursive Verzeichnissuche nach Dateien die hinzugefügt werden
// - ep1 : Stammverzeichnis aus dem Namen entfernen
// -
df : Dateien nach dem archivieren löschen (optional)
{ Datei-Liste zusammenstellen }
for X := 0 to frmDLS.ZIEL_O.Items.Count-1 do begin
WriteDateien(frmDLS.ZIEL_O.Items[X].Caption);
end;
if Splitting = 0 then
//paramPack := Format('a -r -ep1 -ms*.zip;*.rar;*.jpg "%s" "%s"', [RarFilename, TempPath]);
paramPack := Format('a "%s" "%s"',[RarFilename, DateiList]);
if Splitting = 100 then
paramPack := Format('a -r -v100000k -ep1 -ms*.zip;*.rar;*.jpg "%s" "%s"', [RarFilename, TempPath]);
if Splitting = 500 then
paramPack := Format('a -r -v500000k -ep1 -ms*.zip;*.rar;*.jpg "%s" "%s"', [RarFilename, TempPath]);
if Splitting = 1000 then
paramPack := Format('a -r -v1000000k -ep1 -ms*.zip;*.rar;*.jpg "%s" "%s"', [RarFilename, TempPath]);
Application.ProcessMessages;
ExecuteProgramm(PChar(PATH + '\rar.exe'),PChar(paramPACK));
//Shellexecute(0, 'open', PChar(PATH + 'rar.exe'), PChar(paramPACK), nil, SW_SHOW);
frmDLS.sStbar_DLS.Panels[3].Text := '['+IntToStr(Flag)+'] : Packvorgang war erfolgreich !';
if Flag = 0 then Showmessage('['+IntToStr(Flag)+'] : Packvorgang war erfolgreich !');
{ Error Codes für RAR
255 = USER BREAK Anwender hat Process gestoppt
9 = CREATE ERROR Erzeugt einen Dateifehler
8 = MEMORY ERROR Speicher out of Memory(nicht genügend Speicher
7 = USER ERROR Kommandozeilenfehler (OPTIONEN)
6 = OPEN ERROR
5 = WRITE ERROR
4 = LOCKED ARCHIVE gesperrtes Archiv
3 = CRC ERROR
2 = FATAL ERROR
1 = WARNING
0 = ERFOLGREICH}