Delphi FAQ - В чем pазличия ShellExecute и CreateProcess?

ОГЛАВЛЕНИЕ


В чем pазличия ShellExecute и CreateProcess?

ShellExecute может запустить приложение, ассоциированное с расширением
файла, например:
   ShellExecute(Handle, 'open', 'mydoc.doc', nil, nil, SW_SHOW);

запустит Word (или другое приложение, зарегистрованное для *.doc) и откроет
файл mydoc.

CreateProcess не обращает внимание на расширения, но возможности этой
функции гораздо больше. Одна из главных - получение handles нового процесса
и его первичного потока, с помощью которых можно запрашивать информацию о
ходе дочернего процесса.

Надо заметить, что хендл дочернего процесса может вернуть функция
ShellExecuteEx, которая занимает, скажем, промежуточное положение.