Uruchamianie linii komend pod XP

0

Co jest nie tak z poniższym wycinkiem kodu, działa bdb od Visty w górę aż do 10tki, nie chce działać na XP...

CommandLine := 'moje parametry'" >>' + info_file_path;
  FillChar(PI, SizeOf(PI), 0);
  FillChar(SI, SizeOf(SI), 0);
  SI.cb := SizeOf(SI);
  SI.dwFlags := STARTF_USESHOWWINDOW;
  SI.wShowWindow := SW_HIDE;
  process := true;
  Handle := CreateProcessA(nil, PAnsiChar('cmd.exe /C ' + CommandLine), nil, nil, False, 0, nil, PAnsiChar(WorkDir), SI, PI);
  if not Handle then begin
    jobstatus := 'Blad';
1

Ten kod nawet się nie skompiluje, więc nie może działać;

http://stackoverflow.com/questions/18013251/delphi-createprocess-execute-multiple-commands

0

co zwraca GetLastError?

2

Pomijam poprawność dalszego kodu, ale po pierwszej linijce widać że jak to ma działać. Widać wyraźnie jak parser "rozwala formatowanie" i wszystko jest widzane później jako string. Należało by zacząć od poprawienia tego co na początku. Ale do tego trzeba znać podstawy języka Delphi.

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