Zu "Wenn Du eine TStartupInfo konfigurierst, solltest Du sie zweckmäßigerweise auch nutzen."
Ja, täte ich gern, wenn ich nur wüsste, wie.
Kannst du mir bitte kurz erklären, wie ich die TStartupInfo nutze.
Das ein ein Teil von der CreateProcess()
Api. Da findest Du schnell Beispiele.
Als Alternative mag ich noch ShellExecuteEx() hier vorschlagen:
Delphi-Quellcode:
var
shi: TShellExecuteInfo;
commandLine: string;
begin
commandLine := '"A:\Path\a FileName.exe"';
shi := Default(TShellExecuteInfo);
shi.cbSize := SizeOf(TShellExecuteInfo);
shi.lpFile := PChar(commandLine);
shi.nShow := SW_HIDE;
ShellExecuteEx(@shi);
Danke,
ist aber am Thema vorbei.
Da ist ein kleines Programm, das zunächst prüft, ob ein bestimmtes anderes Programm läuft.
Wenn dieses andere Programm läuft, wird diesem eine Message geschickt.
Wenn nicht, wird es (das ander Programm) mit ShellExecute geöffnet.
Mein Problem war das das Programm (das, das entweder die Message schickt oder ...) nicht angezeigt werden sollte.
Dein Vorschlag ändert nichts am Problem, schafft aber ein neues.
Dann wird das Programm, das mit ShellExcute geöffnet wird, nicht angezeigt, aber das soll, wie ich in #17 schrieb, sehr wohl angezeigt werden.