Einzelnen Beitrag anzeigen

nachtstreuner

Registriert seit: 21. Aug 2005
Ort: ESA
104 Beiträge
 
Delphi XE2 Professional
 
#1

RAR.EXE über Shellexecute und Parameter (" ")

  Alt 27. Mär 2012, 12:13
Hallo Delphigemeinde,

Ich rufe über Shellexecute die Rar.exe, welche sich im Programmverzeichnis befindet auf. Irgendwo habe ich gelesen, das der Archivname inkl.Pfad, sofern dieser Leerzeichen enthält in " " eingeschlossen werden muss.

Folgenden Code habe ich :
Code:
  // wenn als RAR gepackt werden soll, dann dies .....
  if DLS.PACK = 'RAR' then begin
     PATH := ExtractFilePath(ParamStr(0));
     paramPack := ' a -r -ep1 ' + QuotedStr(frmDLS.JsListSenden.path + DLS.rarFileName)) + ' '+
          frmDLS.JsListSenden.PATH +'temprar\*.*';
     Showmessage(parampack);
     Shellexecute(0, 'open', PChar(PATH + '\rar.exe'), PChar(paramPACK), nil, SW_SHOW);
  end;
  frmDLS.sBttnUnten.Click;
  frmPackName.Close;
Showmessage ergibt folgende Anzeige :
a -r -ep1 'o:\Sendeverzeichnis\2012-03-27_dls_27123_schneider 20791 RHD.rar' o:\Sendeverzeichnis\temprar\*.*

D.h. QuotedStr() setzt ' statt ". Wie bekomme ich es nun hin, das folgendes in paramPack steht(da der Archivname Leerzeichen enthält) ?:

a -r -ep1 "o:\Sendeverzeichnis\2012-03-27_dls_27123_schneider 20791 RHD.rar" o:\Sendeverzeichnis\temprar\*.*
Alles wird gut -
  Mit Zitat antworten Zitat