CXXApp获取当前系统应用程序路径

CString CXXApp::ConfigGetAppPath()
{
CString strAppPath;
TCHAR path[MAX_PATH];
memset(path,0,sizeof(TCHAR)*MAX_PATH);
GetModuleFileName( NULL,path, MAX_PATH );

TCHAR drive[MAX_PATH],dir[MAX_PATH],fname[MAX_PATH],ext[MAX_PATH];
_tsplitpath(path,drive,dir,fname,ext );

strAppPath = drive;
strAppPath += dir;

return strAppPath;
}

得到运行程序所在路径:(其实得到的是当前执行程序存放路径)

       TCHAR szFilePath[MAX_PATH + 1];

       GetModuleFileName(NULL, szFilePath, MAX_PATH);      

       (_tcsrchr(szFilePath, _T('\\')))[1] = 0;

       CString strtemp=szFilePath;

函数说明:

GetModuleFileName:The GetModuleFileName function retrieves the full path and filename for the executable file containing the specified module。

得到程序当前工作路径: (因为程序在运行过程中,会改变工作路径)

       char pBuf[MAX_PATH];                                 //存放路径的变量      

       GetCurrentDirectory(MAX_PATH,pBuf);                   //获取程序的当前目录

       strcat(pBuf,"\\");

       CString strtemp=pBuf;

函数说明:

GetCurrentDirectory:The GetCurrentDirectory function retrieves the current directory for the current process

备注 ---------------------------------------------------------------------------

_tcslen(str) 获得字符串长度

_tcsrchr(str, L'\\') 反向搜索获得最后一个TCHAR的位置

_stprintf(TCHAR *buffer,const TCHAR *format [,argument] ... )获得一个格式化字符串

_tcsdup 给一个指针分配源字符串大小的内存并从源字符串copy值

_tcstok 按标记将字符串拆分

tcscpy 拷贝字符串

原文地址:https://www.cnblogs.com/carl2380/p/2317348.html