Hauptmenü
Home
Delphi
C# / .NET
Freepascal
Firebird
OPF
Tutorials
Tipps und Tricks
Links
Suche
Impressum
Andere Anwendung starten PDF E-Mail
Geschrieben von Lemmy   
Dienstag, 24. Januar 2006

Es gibt 2 Möglichkeiten eine andere Anwendung zu starten:

1. ShellExecute
Dazu muss man in der USES-Klausel noch die ShellApi einbinden:
uses ..., ShellApi;
Der Befehl im Programm heißt dann wie folgt. Bei den Punkten ist der Name der zu startenden Datei einzutragen. Damit können auch Dateien geöffnet werden, die unter Windows mit irgendwelchen Programmen verknüpft sind (z. B. eine DOC-Datei, wenn Word installiert ist) - es können auch Windows-Befehle eingetragen werden.
shellexecute(handle,PChar('OPEN'), PChar('...'), nil, nil, sw_normal);

2. CreateProcess
Diese Prozedur ist etwas umfangreicher - liefert aber eine Meldung, falls das Programm nicht gestartet werden konnte. Leider können hiermit nur Programme ausgeführt werden und keine verknüpften Dateien.
Bei den 3 Punkten in der Prozedurmitte ist der Programmname (evtl. mit Pfad) einzutragen.
procedure AnwendungStarten;
var aSi:TStartUpInfo;
aPI:TProcessInformation;
dwError:DWord;
begin
  FillChar(aSi,SizeOf(TStartupInfo),0);
  with aSI do
  begin
    cb:=SizeOf(TStartupInfo);
    dwFlags:=STARTF_USESHOWWINDOW;
    wShowWindow:=SW_SHOW;
  end;
  if not CreateProcess(PChar('...'),nil,nil,nil,false,
                       NORMAL_PRIORITY_CLASS,nil,nil,aSI,aPI) then
  begin
    dwError:= GetLastError;
    showmessage(Format('Programm kann nicht gestartet werden. Fehler : %d',[dwError]));
  end;
end;

Letzte Aktualisierung ( Sonntag, 19. Februar 2006 )
 
< Zurück   Weiter >