Перейти к содержимому

Фотография

Запуск внешнего приложения и ожидание его завершения

- - - - -

  • Авторизуйтесь для ответа в теме

#1
daimond

Отправлено 15 ���� 2008 - 05:29

daimond

    Свояк

  • Пользователи
  • 232 сообщений
Автор: Fabrнcio Fadel Kammer www.исходники.ru Пример показывает как из Вашей программы запустить внешнее приложение и подождать его завершения. function ExecAndWait(const FileName, Params: ShortString; const WinState: Word): boolean; export; var StartInfo: TStartupInfo; ProcInfo: TProcessInformation; CmdLine: ShortString; begin {Помещаем имя файла между кавычками, с соблюдением всех пробелов в именах Win9x} CmdLine := '"' + Filename + '" ' + Params; FillChar(StartInfo, SizeOf(StartInfo), #0); with StartInfo do begin cb := SizeOf(SUInfo); dwFlags := STARTF_USESHOWWINDOW; wShowWindow := WinState; end; Result := CreateProcess(nil, PChar( String( CmdLine ) ), nil, nil, false, CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, PChar(ExtractFilePath(Filename)),StartInfo,ProcInfo); { Ожидаем завершения приложения } if Result then begin WaitForSingleObject(ProcInfo.hProcess, INFINITE); { Free the Handles } CloseHandle(ProcInfo.hProcess); CloseHandle(ProcInfo.hThread); end; end; А вот пример вызова этой функции: ExecAndWait( 'C:\windows\calc.exe', '', SH_SHOWNORMAL) Параметр FileName = Имя внешней программы. Параметр Params = Параметры, необходимые для запуска внешней программы Параметр WinState = Указывает - как будет показано окно: Для этого параметра мы можем так же использовать следующие константы: SW_HIDE, SW_MAXIMIZE, SW_MINIMIZE, SW_SHOWNORMAL PS: Этот код тестировался в delphi версий 3, 4 и 5.

#2
jenya123

Отправлено 01 ������� 2009 - 06:19

jenya123

    Мудрец

  • Пользователи
  • 1�454 сообщений
Это для чего? Типа вложение бомбы некоей? :) Или простенький невредный вирус?

#3
BryBry

Отправлено 09 ������� 2009 - 04:00

BryBry

    Начинающий

  • Пользователи
  • 118 сообщений
такой вирус может быть не совсем невредным,смотря какое приложение открывать, но это может использоваться не только во вредных целях, помоему очень плезно для создания программ облегчающих испльзование большое количество приложений

#4
olkachka

Отправлено 28 ������ 2009 - 12:47

olkachka

    Свояк

  • Banned
  • 189 сообщений
мда...вирусы проблема каждого компьютера и мой не исключение,но хорошо что вы так много материала выкладываете по борьбе с ним,благодаря вашим выкладкам на компьютере все аменьше и меньше вирусов,и все благодаря сайту и его создателям!!

#5
yon198626

Отправлено 14 ��� 2009 - 05:48

yon198626

    Знаток

  • Пользователи
  • 341 сообщений
меня вирусы просто достали и еще ключик от веба закончился..(

#6
canavarro

Отправлено 14 ��� 2009 - 02:50

canavarro

    Новоприбывший

  • Пользователи
  • 26 сообщений
У кого есть аналог для C# буду благодарен. Начал недавно изучать!