VC中获取当前exe文件运行路径
一、
TCHAR szFilePath[MAX_PATH + 1]; GetModuleFileName(NULL, szFilePath, MAX_PATH); (_tcsrchr(szFilePath, _T(//)))[1] = 0;//删除文件名,只获得路径
CString str_url = szFilePath; AfxMessageBox(str_url);
二、
String path=AfxGetApp()->m_pszHelpFilePath; String str=AfxGetApp()->m_pszExeName; path=path.Left(path.GetLength()-str.GetLength()-4);
三、
//Get Run-directory
TCHAR szLongPathName[_MAX_PATH];
GetModuleFileName(NULL, szLongPathName, _MAX_PATH);
RunDir = szLongPathName;
int nPos = RunDir.ReverseFind(//);
if(nPos != -1) RunDir = RunDir.Left(nPos+1);
if(RunDir.IsEmpty()){
char szPath[144];
GetCurrentDirectory(144,szPath);
strcat(szPath,"//"); RunDir=szPath;
}
四、
#include < windows.h > #include < string.h > HINSTANCE hInst; char szBuf[256]; char *p; GetModuleFileName(hInst,szBuf,sizeof(szBuf));//拿到全部路径 p = szBuf; while(strchr(p,//)) //分离路径和文件名。 { p = strchr(p,//); p++; } *p = /0; //路径在szBuf理了