Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> WaitForSingleObject 
:(
    Опции темы
Spawn
Дата 27.12.2002, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 278
Регистрация: 3.6.2002

Репутация: нет
Всего: нет



Если я хочу подождать переход процесса в активное состояеие, то какои параметр нужно ставить в hHandle? Дескриптор процесса?
PM MAIL   Вверх
Technoboss
Дата 30.12.2002, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 22.11.2002

Репутация: нет
Всего: нет



Привет!

DWORD WaitForSingleObject(

   HANDLE hHandle, // handle of object to wait for
   DWORD dwMilliseconds // time-out interval in milliseconds  
  );


Parameters

hHandle

Identifies the object. For a list of the object types whose handles can be specified, see the following Remarks section.
Windows NT: The handle must have SYNCHRONIZE access. For more information, see Access Masks and Access Rights.
PM MAIL   Вверх
Song
Дата 30.12.2002, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Sysman.ru
***


Профиль
Группа: Участник
Сообщений: 1095
Регистрация: 2.6.2002

Репутация: нет
Всего: 4



Вам нужен WaitForInputIdle()


--------------------
Прежде чем сказать "Невозможно", подумай, прав ли ты
PM WWW ICQ   Вверх
Technoboss
Дата 3.1.2003, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 22.11.2002

Репутация: нет
Всего: нет



Привет!

Код
function ExecAndWait(const FileName, Params: ShortString; const WinState: Word): Boolean; export;
var 
  StartInfo: TStartupInfo; 
  ProcInfo: TProcessInformation; 
  CmdLine: ShortString; 
begin 
  CmdLine := '"' + Filename + '" ' + Params;
  FillChar(StartInfo, SizeOf(StartInfo), 0); 
  with StartInfo do 
  begin 
    cb := SizeOf(StartInfo);
    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); 
    CloseHandle(ProcInfo.hProcess);
    CloseHandle(ProcInfo.hThread); 
  end; 
end;

Кусок кода, который вызывает ф-цию содержащую WaitForSingleObject
В данном примере запускается исполняемый файл _set.ex_ , а наша
программа минимизируется и ждет пока не закончит работать _set.ex_ ,
а затем восстанавливается. APath - директория, где находиться
файл _set.ex_  . 
...........
Application.Minimize;
try
  SetCurrentDir(Apath);
  ExecAndWait(APath + '_set.ex_', '', SW_SHOW);
finally
  Application.Restore;
end;

.................

Это сообщение отредактировал(а) p0s0l - 30.9.2005, 09:32
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.1211 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.