Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.23;
Скачать: CL | DM;

Вниз

Почему не скрывается запущенная прога через CreateProcess?   Найти похожие ветки 

 
DDS   (2003-10-25 16:45) [0]

Функция должна запустить прогу (DOS-прога) и не показывая ее подождать ее завершения, но процедура зависает (WaitForSingleObject не заканчивается) если я ставлю si.wShowWindow := SW_HIDE. Помогите, вето процедура:

procedure ExeWait(CmdLine,CurDir,ErrStr:String);
var si:STARTUPINFO;
pi:PROCESS_INFORMATION;
begin
ZeroMemory(@si,sizeof(si));
si.cb:=SizeOf(si);
si.dwFlags := STARTF_USESTDHANDLES + STARTF_USESHOWWINDOW;
si.wShowWindow := SW_HIDE;
if not CreateProcessA(nil,PChar(cmdline),nil,nil,true,NORMAL_PRIORITY_CLASS,nil,Pchar(CurDir),si,pi)
then ShowMessage(errstr) else WaitForSingleObject(pi.hProcess, INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
end;


 
Игорь Шевченко   (2003-10-25 21:48) [1]

Чего запускаем ?


 
DDS   (2003-10-26 11:48) [2]

DOS-овскую прогу


 
Rouse_   (2003-10-26 12:35) [3]

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure ExeWait(CmdLine,CurDir,ErrStr:String);
var
si:STARTUPINFO;
pi:PROCESS_INFORMATION;
begin
ZeroMemory(@si,sizeof(si));
si.cb:=SizeOf(si);
si.dwFlags := STARTF_USESTDHANDLES + STARTF_USESHOWWINDOW;
si.wShowWindow := SW_HIDE;
if not CreateProcessA(nil,PChar(cmdline),nil,nil,true,
NORMAL_PRIORITY_CLASS,nil,Pchar(CurDir),si,pi)
then
ShowMessage(errstr) else WaitForSingleObject(pi.hProcess, INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ExeWait("C:\Test.exe", "C:\", "Не могу поднять ногУ!!!");
end;

end.


Все работает...

Желаю успехов


 
DDS   (2003-10-28 22:52) [4]

Попробую спасибо...



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

Текущий архив: 2003.12.23;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.007 c
6-75285
Irr
2003-09-23 19:54
2003.12.23
Что за глюк в локалке с Novell?


7-75421
OTMOPO3OK
2003-10-03 12:13
2003.12.23
Как сделана AIDA: инфа от S.M.A.R.T.; инфа о сост. материнки


1-75231
wnew
2003-12-10 20:36
2003.12.23
TPaintBox и TFrame


11-75136
Gandalf
2003-04-10 15:42
2003.12.23
Всяк сюда входящий...


14-75368
RainKM
2003-11-28 18:47
2003.12.23
USB порты





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский