DLL向EXE发送消息的有关问题?

DLL向EXE发送消息的问题???????????????
DLL的接口函数中实现向EXE中的某个窗口发送消息。
EXE调用接口函数时需要将接受消息的窗口的句柄传进去,此时消息发送相应正常。
问题:为什么EXE将接受消息的窗口的指针而不是句柄传进去后,消息就接受不到了,通过跟踪调试发现传入的窗口指针没变,但指针对应的句柄却被改变了所以导致消息发送不成功,请问这是什么原因,为什么句柄会被改变??

------解决方案--------------------
这样试试
AFX_MANAGE_STATE(AfxGetStaticModuleState());
pWnd->SendMessage(WM_TESTMSG,0,1);
------解决方案--------------------
//HWND hWnd = this->GetSafeHwnd(); 
//pShowDlg(hWnd); 
pShowDlg(this); 
???
是不是注释错了。

SendMsg(this).才对。
------解决方案--------------------
我觉得是不是DLL的地址空间和EXE的地址空间不同, 所以出现这种情况