在DLL中如何确定自身的文件路径,GetModuleFileName 在DLL中如何使用?
在A.exe中调用了B.dll,如何在B.dll中确定自身的文件路径,因为可能不在同一目录下。
(1)
TCHAR DllPath[MAX_PATH];
GetModuleFileName(NULL,DllPath,MAX_PATH);//只能得到调用的EXE文件的路径
(2)
HMODULE g_module = NULL;
g_module = GetModuleHandle(NULL);
GetModuleFileName(g_module,exeFullPath,MAX_PATH);//也只能得到调用的EXE文件的路径
上面两种写法都不行,下面的GetModuleFileName的hModule参数在DLL中如何设置?
DWORD GetModuleFileName(
HMODULE hModule, // handle to module to find filename for
LPTSTR lpFilename, // pointer to buffer to receive module path
DWORD nSize // size of buffer, in characters
);