Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Andere Anwendung nach Delphi-Programm starten (https://www.delphipraxis.net/22331-andere-anwendung-nach-delphi-programm-starten.html)

Waldkauz 16. Mai 2004 01:34


Andere Anwendung nach Delphi-Programm starten
 
Ich möchte mit meinem Delphi-Programm eine Aktion ausführen und
nach dieser Aktion soll sich das Delphi-Programm schließen und
es soll direkt eine andere Anwendung gestartet werden.
Falls dies möglich ist würde ich mich sehr freuen, wenn mir jemand
einen Tipp geben kann.
PS: Ein fremdes Programm zu starten, bekomme ich ja schon hin - mit
WinExec(...);
bzw. mit
ShellExecute(...);
Bloß das Delphi-Programm bleibt dabei im Hintergrund aktiv und das soll
gerade nicht sein!

Wenn mir jemand helfen kann, wird es mir auch gleich besser gehen... :kotz:

Christian Seehase 16. Mai 2004 02:18

Re: Andere Anwendung nach Delphi-Programm starten
 
Moin Waldkauz,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Dein Problem kann ich so nicht nachvollziehen.
Wenn ich, z.B., Notepad per ShellExecute starte, und dann mein Programm beende, wird es auch beendet, während Notepad noch läuft.

Ein wenig Source wäre recht hilfreich.

Waldkauz 16. Mai 2004 02:37

Re: Andere Anwendung nach Delphi-Programm starten
 
Vielen Dank, auch wenn's noch nicht ausreichend eindeutig war.
Also hier ist das Programm (es ist nur dazu da, um zu verdeutlichen wo das Problem liegt,
deshalb so kurz und so ziemlich sinnlos :cheers: ):
Delphi-Quellcode:
unit Unit1;

interface

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

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

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
  WinExec('"C:\Windows\Notepad.exe"',
  SW_ShowNormal);
end;

end.
Dies ist nur ein Testprogramm. Es erscheint ziemlich sinnlos, da man das Notepad ja auch direkt öffnen kann.
Ich möchte einfach nur auf die exe-Datei des Delphi-Programms klicken,
und dann soll das Notepad direkt geöffnet werden ohne dass ich noch zusätzlich irgendwelche Buttons drücken muss (deshalb steht alles in FormCreate).
Und das klappt ja auch mit diesem Programm. Aber nun soll sich das Delphi-Programm auch noch automatisch schließen, so dass durch den einen Klick auf die Delphi...-exe am Ende nur noch das Notepad offen ist.

Hoffentlich hab' ich diesmal mein Problem näher bringen können. :(

phlux 16. Mai 2004 03:08

Re: Andere Anwendung nach Delphi-Programm starten
 
Hi!
Wenn du willst das dein Programm nach dem öffnen des Notepads wieder geschlossen werden soll füg das ein:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  WinExec('"C:\Windows\Notepad.exe"', SW_ShowNormal);
  Application.Terminate; //Beendet dein Programm
end;
Das dürfte die Antwort auf deine Frage gewesen sein, oder? :gruebel:

mfg phlux :hi:

Waldkauz 16. Mai 2004 03:37

Re: Andere Anwendung nach Delphi-Programm starten
 
Ja, diese kleine Zeile war's!
Vielen Dank.
:dancer2:

Die Muhkuh 16. Mai 2004 07:31

Re: Andere Anwendung nach Delphi-Programm starten
 
Wahlweiße wenn nur ein Form offen ist, gehts auch mit Close


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz