我正在为Windows Mobile 6.x创建一个DLL。我需要获得我自己的DLL的HMODULE,但到目前为止我还没有成功。对于标准Windows DLL,这看起来非常简单,因为DllMain
签名是:
BOOL DllMain(HMODULE, DWORD, LPVOID)
您可以将第一个参数保存在全局变量中。但是Windows Mobile DLL的签名是(出于我不理解的原因):
BOOL DllMain(HANDLE, DWORD, LPVOID)
在这种情况下,我在哪里或如何获得我的DLL的HMODULE? 非常感谢你的回答。
答案 0 :(得分:1)
那个HANDLE 是 HMODULE。它们都是void *
的类型定义。
修改强>
我刚试过这个,它按预期工作:
#include "windows.h"
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
HMODULE module = (HMODULE)hModule;
RETAILMSG(TRUE, (_T("module = 0x%08x\r\n", module));
return TRUE;
}