Внешний вид сайта:

Простой путь вызова CreateProcess()

Если Вы поищите функцию CreateProcess() в справке Win32, Вы заметите, что имеется более трех дюжин параметров, которые Вы можете произвольно устанавливать перед вызовом этой функции. Но Вы можете установить только минимальное количество тех параметров, чтобы сделать простой вызов CreateProcess(), как демонстрируется в следующей функции:
function CreateProcessSimple(sExecutableFilePath: string ): string;
var
  pi: TProcessInformation;
  si: TStartupInfo;
begin
  FillMemory(@si, sizeof(si), 0);
  si.cb := sizeof(si);

  CreateProcess(
    nil,
    PChar( sExecutableFilePath ),  // путь к исполняемому файлу:
    nil, nil, False,
    NORMAL_PRIORITY_CLASS, nil, nil,
    si, pi
  );

  // После вызывающего кода,
  // как код ожидания выполнения процесса,
  // Вы должны идти сюда

  CloseHandle(pi.hProcess);
  CloseHandle(pi.hThread);
end;

Теперь все, что нужно сделать - это только вызвать CreateProcessSimple(), скажем, чтобы запустить Блокнот Windows:

CreateProcessSimple('notepad');

Комментарии

Нет комментариев. Ваш будет первым!