Einzelnen Beitrag anzeigen

Benutzerbild von mschaefer
mschaefer

Registriert seit: 4. Feb 2003
Ort: Hannover
2.029 Beiträge
 
Delphi XE3 Enterprise
 
#4

Re: Unterprogramm ausführen

  Alt 2. Nov 2004, 18:38
Moin, Spätmoin,

naja, es gibt auch hier mehrere kürzere Wege. Einer kommt hier von mir.
Du kannst Deine .exe von Deinem Masterprogramm aufrufen. Habe da folgende Routine für.
Die schaut erst nach ob Dein Programm schon läuft. Dann bruacht Sie es nur in den
Vordergrund zu holen. Wenn nicht startet sie es eben einfach...

Delphi-Quellcode:
procedure MyForm.Application_Start
(const ApplicationName : string);
    Wnd : HWND;
begin
   Wnd := FindWindow ( nil, PChar(copy( ApplicationName,1,abs(length( ApplicationName )-4 ))) );
   if Wnd <> 0
   then SetForegroundWindow( Wnd )
   else
   begin
     {       }
     SystemParametersInfo(SPI_GETWORKAREA, 0, @Rect, 0);
     {       }
     Application.ProcessMessages;
     ShellExecute
     ( 0,
        'open',
        PChar(ExtractFilePath(application.ExeName)+ApplicationName),
        PChar(''),
        PChar(''),
        SW_SHOWNORMAL
     );
   end;
   Application.ProcessMessages;
   SleepEx( 1000, false );
end;

Grüße und viel Erfolg

// Martin
Martin Schaefer
  Mit Zitat antworten Zitat