总结几种用于DLL资源模块切换的方法由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“人力资源模块总结”。
方法一):
AFX_MANAGE_STATE(AfxGetStaticModuleState());//模块切换方法一
CMyDialog dlg;
dlg.DoModal();
方法二):
HINSTANCE Save_hInstance=AfxGetResourceHandle();//模块切换方法二
AfxSetResourceHandle(theApp.m_hInstance);
CMyDialog dlg;
dlg.DoModal();AfxSetResourceHandle(Save_hInstance);//方法二的模块状态还原
方法三):
HMODULE hDLL=GetModuleHandle(“CMyDialog.dll”);HINSTANCE hEXE=AfxGetResourceHandle();//或者用:GetModuleHandle(NULL)获取EXE模块句柄。
AfxSetResourceHandle((HINSTANCE)hDLL);//设定资源模块句柄,指定为DLL模块。
CMyDialog dlg;
dlg.DoModal();
AfxSetResourceHandle(hEXE);//还原到应用程序(EXE)模块。
其它函数:
>P283:
HINSTANCE hInst=AfxFindResourceHandle(lpszMenuName,RT_MENU);//lpszMenuName:为一个指定的菜单名。
HMENU hMenu=::LoadMenu(hInst,lpszMenuName);
《VC开发 典型模块大全》P670
HBITMAP m_hBitmap=LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(资源ID号));
《模块大全》P661
HMODULE hMod=LoadLibrary(“SkinDll.dll”)