Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.07.07;
Скачать: [xml.tar.bz2];

Вниз

CreateProcess   Найти похожие ветки 

 
-= Demon =-   (2003-05-06 15:51) [0]

Ситуация такая - необходимо запустить приложение и дождаться окончания его выполнения. Делаем через CreateProcess. При этом запускаемое приложение должно быть невидимо (а это старый добрый DOS). Все делаем под win"2k.
Дилема - в структуре TStartupInfo в поле wShowWindow указываем SW_HIDE, но приложение все равно видно. Как избавиться от этого? Может кто предложит другой способ?

function Exec(...): integer;
var
pi: TProcessInformation;
si: TStartupInfo;

begin

.....

ZeroMemory(@si,sizeof(si));
si.cb:=SizeOf(si);
si.lpReserved:=nil;
si.lpDesktop:=nil;
si.lpReserved2:=nil;
si.cbReserved2:=0;
si.wShowWindow:=SW_HIDE;
si.dwFlags:=STARTF_FORCEONFEEDBACK;
si.lpTitle:=PChar(sTitle);

bStart:=CreateProcess(
nil, // pointer to name of executable module
PChar(cmd), // pointer to command line string
nil, // pointer to process security attributes
nil, // pointer to thread security attributes
False, // handle inheritance flag
REALTIME_PRIORITY_CLASS, // creation flags
nil, // pointer to new environment block
nil, // pointer to current directory name
si, // pointer to STARTUPINFO
pi // pointer to PROCESS_INFORMATION
);

if bStart then
begin
try
while WaitforSingleObject(pi.hProcess, 100) = WAIT_TIMEOUT do
begin
Application.ProcessMessages;
if Application.Terminated then TerminateProcess(pi.hProcess, 0);
end;
finally
...
end;
end;

...

end;


 
circul   (2003-05-06 17:05) [1]

si.dwFlags := STARTF_FORCEONFEEDBACK+STARTF_USESHOWWINDOW;

Кроме этого, после окончания работы внешней программы

CloseHandle(pi.hThread);
CloseHandle(pi.hProcess)


 
-= Demon =-   (2003-05-06 17:17) [2]

>circul
Спасибо...



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2003.07.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-20045
Maksss
2003-06-25 13:47
2003.07.07
Listview


1-20125
Артем К
2003-06-25 03:19
2003.07.07
Где мона достать компаненту нестандартного StringGrida?


1-20097
Brain Force
2003-06-24 15:19
2003.07.07
Помогите разобраться со StringGrid


3-19986
abc
2003-06-13 11:30
2003.07.07
как сделать так что бы ADO сразу сохраняла изменения в записи?


7-20322
Вадим
2003-04-23 13:33
2003.07.07
Internet Explorer и его меню





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский