1. 程式人生 > >MFC獲取exe檔案所在的資料夾

MFC獲取exe檔案所在的資料夾

本示例展示的是利用函式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模式:

效果: