dll调用其他DLL


总结一下这几天使用其他程序调用MFC的DLL,调用DLL里面的窗口资源,需要把当前资源句柄切换到dll中一般广泛采用
AFX_MANAGE_STATE(AfxGetStaticModuleState()); 这个是自动化的,放在函数的开头,在函数使用完之后,自动切换回去

发现在有些时间不好用,比如DLL调用其他DLL。就不可以用这个,编译出错,最后用了手动切换资源,很好用!。
AfxSetResourceHandle(GetModuleHandle("UnityFrame.dll"));

bool bGF = pdlg->Create(IDD_GAME_FRAME);
if (bGF == false)
{
::MessageBox(NULL,"创建对话框失败","sjqp",0);
}
AfxSetResourceHandle(GetModuleHandle(NULL));

然后这个对话框最好设置成:Visible = false sytle=Popup

posted @ 2012-12-17 10:28  swlilike  阅读(338)  评论(0编辑  收藏  举报