GetCurrentDirectory для запуска. c ++

Возможные дубликаты:
Win32: найдите в каком каталоге исполняемый процесс EXE хранится в
Как получить исполняемое имя приложения в Windows (C ++ Win32 или C ++ / CLI)?

привет, я хочу, чтобы мое приложение запускалось в statup, оно использует некоторые файлы в том же каталоге. Работает хорошо, но когда он запускается при запуске, GetCurrentDirectory является «c: \ Documents and Settings \ User» .., но я хочу фактический путь exe file.how я могу получить его в c ++. Помогите мне, пожалуйста. Благодарю.

    Попробуйте использовать GetModuleFileName или GetModuleFileNameEx .

    Сделай это:

     wchar_t exeDirectory[1024]; //to store the directory DWORD ret = GetModuleFileName(NULL, exeDirectory, 1024); if ( ret ) { /*the path to your EXE is stored in the variable "exeDirectory" - use it */ } 

    Примечание. Я передаю NULL в качестве первого аргумента, поскольку MSDN говорит:

    «Если этот параметр равен NULL, GetModuleFileName возвращает путь к исполняемому файлу текущего процесса».

    который вы хотите. Правильно?

    Использование argv возможно:

     int main(int argc, char* argv[]) { // argv[0] is the path to binary file you're running // ... return 0; } 

    Прибыль заключается в том, что этот метод не зависит от платформы и не нуждается в каких-либо системных вызовах.