Einzelnen Beitrag anzeigen

Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#7

Re: CreateProcess nimmt Fokus weg

  Alt 21. Jan 2010, 23:49
Neuer Versuch:

Delphi-Quellcode:
  WndBefore := GetForeGroundWindow;

  if CreateProcess(nil,
                  PChar('c:\program files\mozilla firefox\firefox.exe -new-tab http://www.google.de'),
                  nil,
                  nil,
                  FALSE,
                  NORMAL_PRIORITY_CLASS,
                  nil,
                  nil,
                  FStartupInfo,
                  FProcessInfo) then
  begin
      WaitforSingleObject(FProcessInfo.hProcess,6000);
  end;

  WndAfter := GetForeGroundWindow;

  if (WndAfter <> WndBefore) and (WndBefore <> 0) then
  begin
        BringWindowToTop(WndBefore);
        SetForegroundWindow(WndBefore);
  end;
Ergebnis:

Eine Meldung von Firefox dass es nicht mehr reagiert und neu gestartet werden muss.

Ohne den "if WndAfter <> WndBefore" Block startet es zwar problemlos, aber wie schon gesagt der Input Focus geht an ein unsichtbares Firefox Message Fenster, also ins Nirvana.
  Mit Zitat antworten Zitat