首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

请教怎么获取当前程序所在路径

2012-03-18 
请问如何获取当前程序所在路径?RT,相当于是一个EXE程序,用什么函数能查询它所在的路径位置,谢谢大家帮忙[

请问如何获取当前程序所在路径?
RT,相当于是一个EXE程序,用什么函数能查询它所在的路径位置,谢谢大家帮忙

[解决办法]
贴上一段:
enum PathNamePart
{
DRIVER_PART = 1,
DIR_PART = 2,
FNAME_PART = 4,
EXT_PART = 8
};
////////////////////////////////////////////////////////////////////////////////
//路径名的各部分,可以对PathNamePart的取值进行按位或组合。
std::string GetPartOfPathName(std::string strPathName, unsigned char parts)
{
char szDriver[_MAX_DRIVE], szDir[_MAX_DIR], szFName[_MAX_FNAME], szExt[_MAX_EXT];
_splitpath(strPathName.c_str(), szDriver, szDir, szFName, szExt);

std::string strResult;
if(parts & DRIVER_PART)
strResult = szDriver;

if(parts & DIR_PART)
strResult += szDir;

if(parts & FNAME_PART)
strResult += szFName;

if(parts & EXT_PART)
strResult += szExt;
return strResult;
}
////////////////////////////////////////////////////////////////////////////////
//获取应用程序所在路径
std::string GetAppPath()
{
static std::string strAppPath;
if(strAppPath.length() == 0)
{
char szAppPathName[MAX_PATH];
szAppPathName[GetModuleFileNameA(NULL, szAppPathName, MAX_PATH - 1)] = '\0 ';
strAppPath = GetPartOfPathName(szAppPathName, DRIVER_PART|DIR_PART);
}
return strAppPath;
}

热点排行
Bad Request.