Содержание
ShellExecute(Operation, File, Parameters, Directory, ShowCmd : String)
Запустить программу
Функция ShellExecute запускает EXE-файлы, открывает файлы-документы для редактирования, распечатывает файлы-документы на принтере, открывает указанную папку в проводнике. Выполнение вашей программы продолжается без ожидания завершения выполнения запущенного файла.
Аргумент Operation может быть пустой строкой, тогда файл запускается в обычном режиме, аналогичному запуску файла из проводника двойным щелчком мыши. Либо может содержать действие (например для печати файла "print"). Для каждого типа файла, существуют свои действия, которые зависят от версии операционной системы и установленных программ. Эти режимы можно посмотреть в реестре "HKEY_CLASSES_ROOT\*\shell".
Аргумент File содержит имя файла.
Аргумент Parameters может содержать параметры для запуска EXE-файла. Либо содержать пустую строку.
Аргумент Directory может содержать текущую папку для запуска EXE-файла. Либо пустую строку, тогда используется текущая папка нашей программы.
Аргумент ShowCmd может содержать режим отображения окон запускаемого EXE-файла, либо содержать пустую строку для обычного режима. Режим "SW_HIDE" запускает программу, без отображения окон. Режим "SW_SHOWMINNOACTIVE" запускает программу со свернутыми окнами. Описания остальных режимов ("SW_HIDE", "SW_MAXIMIZE", "SW_MINIMIZE", "SW_RESTORE", "SW_SHOW", "SW_SHOWDEFAULT", "SW_SHOWMAXIMIZED", "SW_SHOWMINIMIZED", "SW_SHOWNA", "SW_SHOWNORMAL" или числовой код), а так же более полную информацию об этой функции вы можете найти в Win32 API SDK.
Если файл запустить не удалось, то происходит исключение.
Пример:Procedure OnCreate; Begin // Открыть документ ShellExecute('','c:\windows\паркет.bmp','','',''); // Открыть документ для редактирования ShellExecute('edit','c:\windows\паркет.bmp','','',''); // Печать документа на принтере. ВНИМАНИЕ, ПЕЧАТЬ НАЧНЕТСЯ БЕЗ ПРЕДУПРЕЖДЕНИЯ! ShellExecute('print','c:\windows\setuplog.txt','','',''); // Запуск программы с установкой текущей папки ShellExecute('','c:\windows\system32\cmd.exe','','c:\',''); // Запуск программы с аргументом и свернутым окном ShellExecute('','c:\windows\notepad.exe','c:\windows\setuplog.txt','','SW_SHOWMINNOACTIVE'); End;