DLL获得主界面的hwnd的有关问题

DLL获得主界面的hwnd的问题
DLL中这么获得:  
HWND   h_mainwnd   =   AfxGetApp()-> m_pMainWnd-> m_hWnd;

但是在某些时候某些机子上可以得到,   又有时候到这句就退出异常了。


我本来是通过h_mainwnd   来和主窗口发消息的,   请问哪种办法比较好?

为什么有些时候可以得到地址,   有时候又越界呢?

------解决方案--------------------
这个不行吧,你还是在dll中弄个全局变量
在加载dll的时候将CWinApp的全局变量指针传递进去为好
------解决方案--------------------
在dll利用FindWindow获得主窗口的句柄也可以啊!
afxGetApp应该是不可以的!他获得的只是你这个动态链接库运行对象的实例!


------解决方案--------------------
用AfxGetMainWnd()得到应用程序的主窗口(框架)比较好,没有发现调用异常
------解决方案--------------------
学习。
------解决方案--------------------
建议还是把主界面中的句柄传到dll里去