Entwickler-Ecke

Windows API - Ein Programm "ausführen in"


LittleBen - So 02.12.12 12:35
Titel: Ein Programm "ausführen in"
Hallo,
ich versuche ein Programm auszuführen, dass für den Start irgendwelche Dateien benötigt, die im selben Ordner liegen. Wenn ich nun das Programm mit WinExec starte, gibt es einen Fehler, da diese Dateien eben nicht gefunden werden konnten. Deshalb muss ich das ja so ausführen, wie es eine Verknüpfung tut, mit dem Parameter "Ausführen in". Nur wie kann ich das machen?

Grüße
Littleben


Gerd Kayser - So 02.12.12 13:24

user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
Deshalb muss ich das ja so ausführen, wie es eine Verknüpfung tut, mit dem Parameter "Ausführen in". Nur wie kann ich das machen?
Mit ShellExecute bzw. ShellExecuteEx. Da kannst Du auch ein Arbeitsverzeichnis angeben. Siehe: http://msdn.microsoft.com/en-us/library/windows/desktop/bb762153(v=vs.85).aspx


jaenicke - So 02.12.12 13:40

WinExec ist übrigens nur zur Kompatibilität mit Windows 3.1 noch vorhanden und seit fast 20 Jahren veraltet...
http://msdn.microsoft.com/en-us/library/windows/desktop/ms687393(v=vs.85).aspx hat folgendes geschrieben:
Note This function is provided only for compatibility with 16-bit Windows. Applications should use the CreateProcess function.


LittleBen - So 02.12.12 16:24

Ahaaa :) Vielen Dank!
Und das mit WinExec ist gut zu wissen...