Никакие навороты пока не нужны, надо получить аналог fpsystem но для винды. Пробую почти как в вики:
- Код: Выделить всё
- program launchprogram;
 
 // Подключаем модули с требуемыми
 // нам процедурами и функциями.
 uses
 Classes, SysUtils, Process;
 
 // Опишем переменную "AProcess"
 // типа "TProcess"
 var
 AProcess: TProcess;
 
 // Здесь наша программа начинается
 begin
 // Создаем объект TProcess и
 // присваиваем его переменной AProcess.
 AProcess := TProcess.Create(nil);
 
 // Сообщим AProcess сомандную строку для запуска
 // Let's use the FreePascal compiler
 AProcess.CommandLine := 'hhhhhhhhhhhhhhhhhhhhhhh______________k';
 
 // Необходимо описать опции программы для запуска
 // Эта опция не позволит нашей программе выполнятся до тех пор, пока
 // запущенная программа не закончится
 AProcess.Options := AProcess.Options + [poWaitOnExit];
 
 // Теперь AProcess знает командную строку
 // и мы ее запускаем
 AProcess.Execute;
 
 // Пока ppc386 не прекратит работу, мы досюда не дойдем
 AProcess.Free;
 writeln('exit');
 end.
И получаю:
- Код: Выделить всё
- An unhandled exception occurred at $0000000000463744 :
 EProcess : Executable not found: "hhhhhhhhhhhhhhhhhhhhhhh______________k"
 $0000000000463744
 $000000000040026A
Как научить TProcess не валить по любому поводу программу?




 
  Живая иллюстрация анекдота девяностых "мазохист это программист в виндовсе": чтобы выполнить не exe а комманду системы, нужно передавать не 'set' а 'cmd.exe /c set' и так каждый раз.
 Живая иллюстрация анекдота девяностых "мазохист это программист в виндовсе": чтобы выполнить не exe а комманду системы, нужно передавать не 'set' а 'cmd.exe /c set' и так каждый раз.

