verzeichnis wo exe liegt und nicht arbeitsverzeichnis
-
hallo!
wie jeder sicher weiß kann man mit dem tollen befehl getcwd das aktuelle arbeitsverzeichnis ausfindig machen. nun gibt es aber fälle wo die ausführbare datei nicht in dem verzeichnis gestartet wird wo die ausführbare datei liegt!
ausführbare datei liegt im vereichnis c:\programme\test\test.exe und wird dann über c:\ gestartet.ich brauche also das verzeichnis wo meine gerade ausgeführte datei liegt. am liebsten wär es mir, wenn ich dies nicht über die argv des main machen müsste, da ich dies dann ziemlich weit durschleifen müsste

danke für die hilfe!
-
Unter C++ gibt es jedenfalls keinen portablen Weg. Aber du könntest ja mal die GetModuleFileName()-Funktion aus der WinAPI versuchen.
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
CStoll (off) schrieb:
Unter C++ gibt es jedenfalls keinen portablen Weg. Aber du könntest ja mal die GetModuleFileName()-Funktion aus der WinAPI versuchen.
leider wird das nichts mit der winapi, da ich auf diese nicht zugreifen kann bzw. ich diesen code eventuell auch ins linux portieren muss
@verschiebung:
also bitte, nur weil ein vorschlag die winapi ist, muss dies noch lange nicht ein thema für den winapi channel sein