WINDOWS下获得DLL所在目录的代码

网友投稿 599 2022-09-19

WINDOWS下获得DLL所在目录的代码

WINDOWS下获得DLL所在目录的代码

获取执行文件所在目录: static char* getRunningPath(const char* pExe, char* pBuffer, const UINT appPathSize) { if (GetModuleFileNameA(GetSelfModuleHandle(), pBuffer, appPathSize) == 0) { return NULL; } return pBuffer; }   如果要获取加载的dll目录呢? //windows下获取当前dll的句柄 static HMODULE GetSelfModuleHandle() { MEMORY_BASIC_INFORMATION mbi; return ((::VirtualQuery(GetSelfModuleHandle, &mbi, sizeof(mbi)) != 0) ? (HMODULE)mbi.AllocationBase : NULL); } static char* getRunningPath(const char* pExe, char* pBuffer, const UINT appPathSize) { if (GetModuleFileNameA( (pExe != NULL && strlen(pExe) > 0) ? NULL : GetSelfModuleHandle(), pBuffer, appPathSize) == 0) { return NULL; } return pBuffer; }   如果有执行文件,就获取执行文件的目录,否则获取so的目录。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:编译WINDOWS版FFmpeg:编译FFmpeg
下一篇:Python几个有趣和特别的小故事(python有趣案例)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~