BobKiller007 Geschrieben 4. Dezember 2011 Teilen Geschrieben 4. Dezember 2011 Hallo Leute, gibt es eine Möglichkeit in C++ den Pfad der aktuell ausgeführten Datei zu ermitteln? Ich würde nämlich gerne wissen, in welchem Verzeichnis sich die .exe-Datei befindet, die gerade ausgeführt wird, da die Verzeichnisse ja von Benutzer zu Benutzer variieren. Über einen Code-Schnipsel würde ich mir sehr freuen. Viele Grüße Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 4. Dezember 2011 Teilen Geschrieben 4. Dezember 2011 http://msdn.microsoft.com/en-us/library/sf98bd4y(v=VS.100).aspx unter *nix heißt das Ding genauso, nur der Underscore kommt wesch. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 4. Dezember 2011 Teilen Geschrieben 4. Dezember 2011 (bearbeitet) Das Arbeitsverzeichnis ist nicht das Verzeichnis, in dem die ausführbare Datei liegt. Unter Windows benutzt man GetModuleFileName. Wofür brauchst du den Pfad denn? Spätestens ab Vista hast du in dem Verzeichnis sowieso nichts zu suchen. Bearbeitet 4. Dezember 2011 von Klotzkopp Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 4. Dezember 2011 Teilen Geschrieben 4. Dezember 2011 Das Arbeitsverzeichnis ist nicht das Verzeichnis, in dem die ausführbare Datei liegt. Nicht? :/ Was zeigt einem das CWD denn an? (man merkt, dass ich es bisher nicht benötigt habe *G*) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 4. Dezember 2011 Teilen Geschrieben 4. Dezember 2011 Was zeigt einem das CWD denn an?Eben das CWD, also das aktuelle Arbeitsverzeichnis. Das ist das Verzeichnis, auf das sich relative Pfadangaben beziehen. Das ist eine veränderliche (daher das C in CWD) Eigenschaft eines Prozesses, die nichts damit zu hat, wo die ausführbare Datei steht. Wenn ein Programm aus dem enthaltenden Verzeichnis heraus gestartet wird, ist das CWD zu Anfang das Verzeichnis, in dem die ausführbare Datei steht. Aber erstens muss das nicht so sein, und zweitens kann sich das CWD ändern, während das Programm läuft. Bei Windows-Verknüpfungen kann man das anfängliche Arbeitsverzeichnis festlegen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 4. Dezember 2011 Teilen Geschrieben 4. Dezember 2011 Aber erstens muss das nicht so sein Ah. Ok. Das scheint mir das wichtigste daran zu sein. Vielen Dank! :] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
BobKiller007 Geschrieben 4. Dezember 2011 Autor Teilen Geschrieben 4. Dezember 2011 Wofür brauchst du den Pfad denn? Da jeder Benutzer die Datei sicherlich woanders abspeichert, benötige ich das Verzeichnis, um darein andere Dateien abzulegen wie z. B. .txt-Dateien. Das Arbeitsverzeichnis ist nicht das Verzeichnis, in dem die ausführbare Datei liegt. [...] Spätestens ab Vista hast du in dem Verzeichnis sowieso nichts zu suchen. Wie kommt man denn dann in das Verzeichnis, in dem die Datei abgelegt ist? Ich habe hier ein paar Varianten gefunden, wie man die Sache am besten angeht:c-plusplus.de Welche Möglichkeit würdet ihr empfehlen? Gruß Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thanks-and-Goodbye Geschrieben 4. Dezember 2011 Teilen Geschrieben 4. Dezember 2011 Da jeder Benutzer die Datei sicherlich woanders abspeichert, benötige ich das Verzeichnis, um darein andere Dateien abzulegen wie z. B. .txt-Dateien.Warum? Konfigdateien gehören in den entsprechenden Pfad des Userprofiles. \User\Anwendungsdaten\lokale Einstellungen oder \User\lokale Einstellungen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
BobKiller007 Geschrieben 4. Dezember 2011 Autor Teilen Geschrieben 4. Dezember 2011 Warum? Konfigdateien gehören in den entsprechenden Pfad des Userprofiles. \User\Anwendungsdaten\lokale Einstellungen oder \User\lokale Einstellungen. Ich weiß aber nicht, wie ich an den Usernamen rankommen soll. Beispielsweise unter XP: C:\\Dokumente und Einstellungen\xyz - an dieser Stelle kommt immer ein beliebiger Username; und diesen Pfad würde ich gerne herausbekommen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thanks-and-Goodbye Geschrieben 4. Dezember 2011 Teilen Geschrieben 4. Dezember 2011 Und warum arbeitest du dann nicht mit der Betriebssystemvariable %userprofile%? Alternativ mal hier lesen: http://stackoverflow.com/questions/2760310/how-to-resolve-location-of-userprofile-programatically-in-c Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
BobKiller007 Geschrieben 4. Dezember 2011 Autor Teilen Geschrieben 4. Dezember 2011 Und warum arbeitest du dann nicht mit der Betriebssystemvariable %userprofile%? Das liegt daran, dass ich nicht wusste, dass es das gibt. Bin halt noch Anfänger. Danke für den Tipp! Ich werd mich mal ein wenig damit beschäftigen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.