Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
Для запуска приложений из программы можно использовать следующие функции API Windows:
ShellExecute( hwnd: THandle, // указатель на родительское окноlpOperation: PChar, //выполняемая операцияlpFile: PChar, // файл или папкаlpParameters: PСhar, //строка параметров запускаемой программыlpDirectory: PChar, // директория по умолчаниюnShowCmd: integer // состояние окна запущенной программы);
hwndОпределяет родительское окно, которое будет получать сообщения от запускаемого приложения (например, об ошибке при запуске).
lpOperationОпределяет выполняемую оперерацию.
"open" - открывает файл lpFile. Файл может быть документом, приложением или папкой. "print" - печатает файл lpFile. Файл должен быть документом. Если передано приложение, то выполняются действия, аналогичные "open".
"explore" - открывает папку lpFile в проводнике Windows.
nil - аналогично "open".
lpFileФайл или папка. Функция может открыть или напечатать файл, открыть папку, запустить приложение.
lpParametersЕсли lpFile - приложение, то lpParametrs может содержать строку параметров приложения.
Если lpFile - документ или папка, lpParameters должен быть nil.
nShowCmdОпределяет как должно выглядеть окно запущенного приложения, приведу несколько основных констант, остальные можно посмотреть в Windows SDK.
Константа |
Описание |
SW_HIDE | Скрывает окно. |
SW_MAXIMIZE | Разворачивает окно. |
SW_MINIMIZE | Сворачивает окно. |
SW_SHOWMAXIMIZED | Активизирует и разворачивает окно. |
SW_SHOWMINIMIZED | Активизирует и сворачивает окно. |
SW_SHOWNORMAL | Активизирует и показывает окно в состоянии, определяемым самим приложением. |
Открытие файлов через OpenDialog:procedure TForm1.Button1Click(Sender: TObject);begin if OpenDialog1.Execute then ShellExecute(Self.Handle, 'open', PChar(OpenDialog1.FileName), nil, nil, SW_SHOWNORMAL);end;
Открытие IE с заданным URL:ShellExecute(Self.Handle, 'open', 'http://www.delphi.hostmos.ru', nil, nil, SW_SHOWMAXIMIZED);
Запуск почтового клиента:ShellExecute(Self.Handle, 'open', 'mailto:vasya@mail.ru', nil, nil, SW_SHOWNORMAL);
Примечание. Для использования ShellExecute в раздел uses надо добавить модуль ShellAPI.