使用
LPTSTR strDLLPath1 = new TCHAR[_MAX_PATH];
::GetModuleFileName((HINSTANCE)&__ImageBase, strDLLPath1, _MAX_PATH);
我得到正确打印的DLL的路径。
D:\ Test \ work \ EasyDLL \ Debug \ EasyDLL.dll
现在我只需要
"D:\Test\work\EasyDLL\Debug\"
。鉴于我使用VC ++的经验,您可以以最佳方式指导我执行此操作-任何字符串替换,转换等。
最佳答案
查看shell patch handling functions,更确切地说,查看PathRemoveFileSpec,它正是您想要的。
您将需要与shlwapi.lib链接。