HERIBERT | Bonjour à tous
D'habitude, CreateProcess() attend la fin de l'exécution du processus fils qu'il a appelé. Je n'ai pas ce pb avec lui... enfin jusqu'à maintenant.
Code :
- Procedure Appel_Navigateur;
- Var
- StartupInfo: TStartupinfo;
- ProcessInfo: TProcessInformation;
- Retour : longbool;
- Appel, Rep : string;
- Erreur : longint;
- begin
- // APPEL du navigateur --------------------------
- FillChar(Startupinfo,Sizeof(TStartupinfo),0);
- Startupinfo.cb:=Sizeof(TStartupInfo);
- StartupInfo.wShowWindow := SW_SHOWMAXIMIZED;
- StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
- Appel := Nom_Complet_Navigateur;
- Rep := Rep_Navigateur;
- Application.Minimize;
- Retour := CreateProcess(nil,
- PChar(Appel),
- nil,
- nil,
- false,
- normal_priority_class,
- nil,
- PChar(Rep),Startupinfo,ProcessInfo);
- Application.Restore;
- Application.MainForm.BringToFront;
- if Retour <> false then
- begin
- WaitforSingleObject(Processinfo.hProcess, infinite);
- CloseHandle(ProcessInfo.hProcess);
- end
- else
- begin
- RaiseLastOSError;
- Erreur := GetLastError;
- end;
- end;
|
Même le composant CoolTrayIcon n'arrive à rien. La fenêtre de mon appli se réduit (normal), le processus est appelé, mais j'ai la fenêtre de mon appli qui revient à son état normal ! Qu'est-ce qui arrive ?
Merci, parce que là ça fait plusieurs jours que je bidouille pour rien... Je ne peux plus cacher mon appli, la réduire en icône ! C'est exactement comme si je faisais un ShellExecute.
|