Código
//Execute aplicações invisíveis no delphi, não aparecem na taskbar nem na lista de processos.
Function RunProcess(const AppPath, AppParams: string; Visibility: Word; MustWait: Boolean): DWord;
var SI: TStartupInfo;
PI: TProcessInformation;
Proc: THandle;
begin
FillChar(SI, SizeOf(SI), 0);
SI.cb := SizeOf(SI);
SI.wShowWindow := Visibility;
if not CreateProcess(PChar(AppPath), PChar(AppParams), nil, nil, false, Normal_Priority_Class, nil, nil, SI, PI) then Begin
raise Exception.CreateFmt('Failed to excecute program. Error Code %d', [GetLastError]);
End;
Proc := PI.hProcess;
CloseHandle(PI.hThread);
if MustWait then if WaitForSingleObject(Proc, Infinite) <> Wait_Failed then GetExitCodeProcess(Proc, Result);
CloseHandle(Proc);
end;
procedure ApplicationHide(HideState:Boolean);
begin
RegisterServiceProcess(GetCurrentProcessID,Ord(HideState));
end;
Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009