Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > ОС и железо
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #3  
Старый 11.12.2008, 11:03
Аватар для Thrasher
Thrasher Thrasher вне форума
Illuminati
 
Регистрация: 06.03.2008
Адрес: Крым, г. Симферополь
Сообщения: 348
Репутация: 8808
По умолчанию

Есть волшебные функции SuspendThread и ResumeThread.

Пример кода:

Код:
Var
  
ProgramFileName:String;
  sti:TStartupInfo;
  lpPi:TProcessInformation;

begin

 ZeroMemory(@Sti,Sizeof(STI));
 STi.cb:=Sizeof(STI);
 ZeroMemory(@lpPi,Sizeof(LpPi));

if not CreateProcess(nil,PChar(ProgramFileName),nil,nil,false,0,nil,nil,StI,lpPI) then
         begin
           ShowMessage('Can not create process!');
           Exit;
         end;

    SuspendThread(lppi.hThread); // "Заморозили" процесс
// Тут какие-то действия, проверки и т.д.
 If  CheckValid<>True then TerminateProcess(lppi.hProcess,0) // если проверка непрошла, тогда завершаем процесс
  else // иначе
   ResumeThread(lppi.hThread); // "Разморозили" процесс

end;
__________________
Хорошо написанная программа не требует документации
ICQ 9-184-668.
Ответить с цитированием
Этот пользователь сказал Спасибо Thrasher за это полезное сообщение:
foxer (29.02.2012)
 


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:30.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025