ShellExecute - wiele parametrów

0

witam
piszę mały program i potrzebuję uruchomić plik exe z kilkoma parametrami:
mam taką linijkę:
ShellExecute(Handle, 'open', PChar('rpmp.exe '), PChar('-r "'+S+'" -o "plik_nzwa" -q -W "http://adres.com"'), nil, SW_SHOW);
Muszę przekazać kilka parametrów. Ale to nie działa - program uruchamia się bez parametrów.

Proszę o pomoc
pozdrawiam.

0

Coś źle robisz, chyba jakieś spacje tam niepotrzebnie dałeś po nazwie exe, ale bez wstawienia kodu w tsgi źle widać.
Zrobilem tak. Pierwszy wycinek kody to testowy program test.exe ktory wrzuciłem od razu do D:, a później kodem
drugim go wywołalem i otrzymalem napis: "Parametry: parametr 1 parametr 2 parametr 3" (bez " i ") - czylli ok.

program test;

{$APPTYPE GUI}

uses
  Windows;

var
  S : string;
  I : integer;
begin
  S := '';
  for I := 1 to ParamCount do
    S := S + #32 + ParamStr(I);
  MessageBox(GetACtiveWindow, PChar('Parametry: ' + S), 'To tylko test', MB_ICONINFORMATION + MB_OK);
end.
uses
  SHellApi;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShellExecute(Handle, 'open', PChar('D:\test.exe'),
    PChar('"parametr 1" "parametr 2" "parametr 3"'), nil, SW_SHOW);
end;
0

teraz działa.
Wielkie dzięki :)

0

mam jeszcze jedno pytanie...
chciałbym, aby kolejne linie były wykonywane wtedy, kiedy program wywołany z shellexecute zakończy działanie. W jaki sposób to zrobić?

0

Nie sprawdzałem, ale rozwiązanie podane na tej stronie powinno zadziałać:
http://delphi.about.com/od/windowsshellapi/a/executeprogram.htm

0
olesio napisał(a)

Nie sprawdzałem, ale rozwiązanie podane na tej stronie powinno zadziałać:
http://delphi.about.com/od/windowsshellapi/a/executeprogram.htm

dzięki za link :)
pomogło ;p

pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1