003
21.10.2006, 09:34 Uhr
FloSoft
Medialer Over-Flow (Administrator)
|
| Zitat von CppProgrammer: |
| C++: |
std::string GetWorkingDirectory() { char cPath[MAX_PATH]; GetModuleFileNameA(NULL, cPath, MAX_PATH); std::string Path = cPath; return Path; }
|
|
das ist NICHT das Arbeitsverzeichnis!!! Das Arbeitsverzeichnis ist das Verzeichnis in dem die Anwendung ausgeführt wird, nicht das wo sie drin liegt.
Ersteres bekommt man mit GetCurrentDirectory und letzteres mit der Methode da von CppProgrammer, nur sollte man da natürlich noch den exe-dateinamen wegschneiden (nach letztem \ suchen und die stelle nullen:
| C++: |
std::string GetExecutableDirectory() { char cPath[MAX_PATH]; GetModuleFileNameA(NULL, cPath, MAX_PATH); *(strrchr(cPath, '\\') +1) = '\0'; // das schneidet die exe ab dem letzten \ weg std::string Path = cPath; return Path; }
|
-- class God : public ChuckNorris { }; |