windows获取当前exe文件运行路径

有一个问题肯定困扰大家很久,在vs中f5启动调试时,默认情况下根目录是.vcproj文件所在目录。而生产的.exe所在的目录往往是加一个debug,或者是 win32/debug等。目录不统一,造成在哪里放置dll,在哪里生成日志文件,相当的困扰。

下面展示出如何在vs中获取运行的exe的目录:

        TCHAR exeFullPath[MAX_PATH]; // Full path   
	GetModuleFileName(NULL, exeFullPath, MAX_PATH);
	std::wstring strFullPath = (std::wstring)(exeFullPath);
	int nStart = strFullPath.find_last_of(TEXT("\\"));
	std::wstring strExeName = strFullPath.substr(nStart + 1, strFullPath.length() - 4);

plus:

GetCurrentDirectory()

获取路径,不含文件名

    原文作者:jigetage
    原文地址: https://blog.csdn.net/jigetage/article/details/80689495
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞