LRESULT result = ::SendMessage(hWnd, s_MaxGetTaskInterface, (WPARAM)&pUnkReturn, 0);
调用后的结果值为0
我希望它以有效值pUnkReturn返回,但它以NULL值返回。
致电之前需要的信息:
const UINT CMotionUtils::s_MaxGetTaskInterface = RegisterWindowMessage(_T("NI:Max:GetTaskInterface"));
我在这里得到的
s_MaxGetTaskInterface
的值为49896。hWnd的值也合适。我使用Spy ++(Visual Studio工具)进行了检查。
“Microft Spy ++消息”窗口向我显示了此窗口的以下内容。
<00001> 009F067C S message:0xC2E8 [Registered:"NI:Max:GetTaskInterface"]wParam:0224C2D0 lParam:00000000
<00002> 009F067C S message:0xC2E8 [Registered:"NI:Max:GetTaskInterface"]lResult:00000000
通话结束后,请帮助我获取存储在pUnkReturn中的有效地址。
最佳答案
我认为基于匈牙利前缀,需要&in&pUnkReturn。我希望pUnkReturn具有类型IUnknown *。消息接收者将提供IUnknown *。它存储IUnknown *的地址是IUnknown **。因此,此代码传入&pUnkReturn,并且消息接收者写入*(IUnknown **)wParam。
关于c++ -::发信息( ),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/100678/