Kitty82 Geschrieben 21. Dezember 2005 Geschrieben 21. Dezember 2005 Hallo zusammen, habe schon eure Suchfunktion benutzt, aber irgendwie dazu nix gefunden :confused: Kann mir jemand einen Tipp geben, wie ich das Verzeichnis worin meine Exe liegt, herausfinden kann? Bin dankbar für jeden Tipp! Gruß Kitty
Guybrush Threepwood Geschrieben 21. Dezember 2005 Geschrieben 21. Dezember 2005 hehe ich wusste das die frage kommt Versuchs mal mit GetCurrentDirectory(). Das liefert dir den aktuellen Pfad für den Prozess.
Kitty82 Geschrieben 21. Dezember 2005 Autor Geschrieben 21. Dezember 2005 hehe ich wusste das die frage kommt im ernst? :confused: woher?? :beagolisc das klappt leider nicht. Er gibt mir hier das verzeichnis über der Exe an. Brauche aber genau das Verzeichnis wo die Exe liegt. Ich brauche daher das Verzeichnis, weil die Exe eine Datei immer benötigt, die genau da liegt, wo sie selber ist ... noch ne Idee? danke + Gruß Kitty //Edit hatte mich verschaut, funktioniert doch ... Da dank ich dir mal wieder ganz herzlich für deine Hilfe!
Guybrush Threepwood Geschrieben 21. Dezember 2005 Geschrieben 21. Dezember 2005 na wegen deiner Frage zum Speichern der Daten in einer Datei dann probiers mal mit GetModuleFileName *Edit: Nagut, aber GetModuleFileName ist evtl doch besser weil dir GetCurrentDirectory glaube ich "nur" das Arbeitsverzeichnis liefert. D.h. wenn du eine Verknüpfung zu deiner Exe anlegst und da dann bei Ausführen in einen anderen Pfad angibst dann sollte dir GetCurrentDirectory diesen Pfad liefern.
Kitty82 Geschrieben 21. Dezember 2005 Autor Geschrieben 21. Dezember 2005 das klappt dann noch besser. da bringt er mir den kompletten pfad zurück. danke!!
Timon Geschrieben 21. Dezember 2005 Geschrieben 21. Dezember 2005 im ernst? :confused: woher?? :beagolisc noch ne Idee? Ich hab grad zwar nicht viel Zeit, hab aber trotzdem mal meine Idee entworfen: #include <windows.h> #include <stdio.h> #include <conio.h> #include <tchar.h> #define BUFSIZE MAX_PATH int _tmain(int argc, TCHAR **argv, TCHAR **envp) { TCHAR Buffer[BUFSIZE]; DWORD dwRet; dwRet = GetCurrentDirectory(BUFSIZE, Buffer); if(argv[0][1] == ':' || argv[0][1] == '\\') { printf("%s", argv[0]); } else { printf("%s", Buffer); } } Prinzip ist klar? Wenn nicht fragen. Das Snippet ist noch nicht perfekt. Aus argv[0] muesste man noch den Namen des Executables abschneiden.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden