MFC獲取exe檔案所在的資料夾
阿新 • • 發佈:2018-11-19
本示例展示的是利用函式cstrGetExePath(),返回當前的exe程式所在的資料夾路徑。即使路徑裡有中文名也適用。
本示例受了 https://blog.csdn.net/jaken99/article/details/78231872的啟發
程式碼:
// ConsoleApplication1.cpp : 定義控制檯應用程式的入口點。 // #include "stdafx.h" #include <afx.h> #include <Windows.h> #include <string.h> CString cstrGetExePath(void) { CString cstrPath; char arrFilePath[1024] = {0}; //HMODULE hModuleInst = _AtlBaseModule.GetModuleInstance(); GetModuleFileNameA(NULL, arrFilePath, 1024); char * pPos = NULL; pPos = strrchr(arrFilePath, '\\'); if(pPos) *pPos = NULL; if(arrFilePath[strlen(arrFilePath) - 1] != '\\') strcat_s(arrFilePath, "\\"); cstrPath.Format("%s", arrFilePath); return cstrPath; } int _tmain(int argc, _TCHAR* argv[]) { CString cstrPath = cstrGetExePath(); return 0; }
為了能顯示漢字,請採用“多位元組字符集”
設定MTd模式:
效果: