GetModleFileName与GetModuleBaseName的区

来源:互联网 发布:用手机淘宝怎么挣钱 编辑:程序博客网 时间:2024/06/06 16:53



区别:GetModleFileName返回进程名包含路径  GetModuleBaseName返回进程名不包含路径  原型:GetModleFileName(NULL, lpText, sizeof(lpText));  GetModuleBaseName(GetCurrentProcess(), NULL, lpText, sizeof(lpText));  注意:使用GetModuleBaseName必须包含头文件psapi.h和库文件Psapi.lib  下面是获取当前进程名的方法方法1: GetModleFileName()先得到进程全路径名,然后提取出进程名//得到当前进程全路径string GetFullName(){//hModule为NULL则返回该当前应用程序全路径//也可以使LoadLibrary之类的函数返回的句柄char szPath[MAX_PATH] = { 0 };::GetModuleFileName(NULL, szPath, MAX_PATH);return szPath;}//得到文件名(包含扩展名)const char* GetFileName(const char* pFile){if (NULL == pFile || 0 == strlen(pFile)){return "";}const char *pPos = strrchr(pFile, '\\');if (NULL == pPos){pPos = strrchr(pFile, '/');if (NULL == pPos){return "";}}return pPos + 1;}方法2: 直接调用GetModuleBaseName()获取进程名#include <psapi.h> #pragma comment (lib,"Psapi.lib")char szPath[MAX_PATH] = { 0 };GetModuleBaseName(GetCurrentProcess(), NULL, szPath, sizeof(szPath));




0 0
原创粉丝点击