Forum: Win32/Win64 API (native code)
Delphi
by Bbommel,
23. Mai 2008
Der fünfte Parameter gibt das Arbeitsverzeichnis an. Hast du denn schon mal
ShellExecute(Application.Handle, nil, PChar('.\bin\programm.exe'),'',PChar('.\bin'),SW_SHOW);
versucht?
Wahlweise auch mal an beiden Stellen mit absoluten Pfad-Angaben testen...
Bis denn
Bommel
Forum: Win32/Win64 API (native code)
Delphi
by Bbommel,
23. Mai 2008
Ach so, noch eine Idee: ShellExecute gibt einen Wert zurück, den du abfangen und z.B. per MessageDlg ausgeben kannst. Laut Hilfe sollte er größer als 32 sein, damit der Aufruf erfolgreich war, der Rest unter 32 ist dann ein Ferhlercode.
Bis denn
Bommel
Forum: Win32/Win64 API (native code)
Delphi
by Bbommel,
23. Mai 2008
Moin,
wieso gibst du als zweiten Parameter "nil" mit? Das ist ja die Operation, die er machen soll und ich hab da immer 'open' stehen.
Also:
ShellExecute(Application.Handle, 'open', PChar('.\bin\programm.exe'),'','',SW_SHOW);
Bis denn
Bommel