Moin Tjiel,
Assarbad hat da zwei Funktionen gezeigt, zum einen eine für
ANSI zum anderen eine für
Unicode (kenntlich am A bzw. W am Ende des Funktionsnamens)
Die Parameter bedeuten:
function ShellExecuteAndWaitA(hWnd: HWND; Operation, FileName, Parameters, Directory: PAnsiChar; ShowCmd: Integer; bWait: BOOL):
- hWnd
Handle eines Fenster, dass als Parent für eventuell anzuzeigende Meldungsdialoge dient. Hier kannst Du beispielsweise das Handle Deines Formulares angeben, oder aber auch 0.
- Operation
Was mit der im Parameter FileName angegebenen Datei gemacht werden soll. In der Shell werden sogenannte Verben verwendet, die das angeben. Für das Starten eines Programmes wird man da immer open angeben.
Weiteres kannst Du am Besten im PSDK unter ShellExecuteEx nachlesen.
- FileName
Der Pfad zu der Datei.
Hier kann man den Pfad zu einem Programm, aber auch den zu einer Datei angeben, deren Typ mit einem Programm verknüpft ist, dass die Datei öffnet, z.b. den Pfad zu einer TXT Datei (dann würde meist Notepad gestartet, und die angegebene Datei geladen werden)
Gibst Du nur einen Dateinamen, aber keinen Pfad an, muss sich die Datei im Suchpfad befinden.
- Parameters
Eventuelle weitere Parameter die übergeben werden sollen
- Directory
Das Arbeitsverzeichnis
- ShowCmd
Wie das gestartete Programm angezeigt werden soll, also z.b. SW_NORMAL, wenn das Programm so gestartet werden soll, wie bei einem Doppelclick im Explorer.
Hierzu findest Du näheres im PSDK unter ShellExecute
- bWait
True: es wird auf die Beendigung des gestarten Programmes gewartet
False: Programm wird gestartet, und die Funktion kehrt sofort zurück
Du musst halt nur die Funktion irgendwo in Deinem Programm einbauen.
Unter Uses muss noch ShellAPI hinzugefügt werden.