DLL图标被乱用怎么办? 我做了一个DLL个其他程序用,dll内有一些图标,运行过程中,图标有时候显示的不是我定义的图标,而是主程序(也许是其他dll)定义的图标, 我怎样保证图标不乱用呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 AfxSetResourceHandle和AfxGetResourceHandle可以帮助你,具体用法可以查MSDN 对于象对话框、位图、图标这些标准资源,如果采用MFC方式,可以使AfxSetResourceHandle设置资源DLL的句柄,如: hDll=LoadLibrary("ResourceDLL.dll"); if(hDll==NULL) AfxMessageBox("Can't Load the library"); else AfxMessageBox("success"); AfxSetResourceHandle(hDLL); ... } 这样以后你再使用CDialog创建对话框时,对话框将来自你的资源DLL,而不是.exe文件。如果你在程序中还要使用.exe中的资源,你需要在 AfxSetResourceHandle之前,先使用 AfxGetResourceHandle保存当前的资源文件句柄。 2,SDK方式。你在调用CreateDialog或DialogBox时,它们的第一个参数都是HINSTANCE,就是你LoadLibrary获得的句柄。你不需要使用FindResource,CreateDialog或DialogBox会自动查找资源并加载。 情况不是这样的, 我做一个DLL,主程序(已经编好了不可更改)调用这个DLL,我的资源定义在这个DLL里, 我做了一个自定义按钮,用AfxGetApp()->LoadIcon()加载图标, 就是说我没有机会调用 LoadLibrary() 求教各位大神,VC6.0对话框自动关闭 windows核心编程进度汇报----感谢stjay的建议 usb检测的问题 特殊符号的处理问题 怎样重写拖动窗口? 初学者看代码,请帮忙 如何解决dll的冲突问题 谁有NuMega TrueTime,我找了半天也没有找到。 各位,帮我看一个程序~~!! 使用jrtplib时出错:Debug Assertion Failed 关于MSN插件的开发! 如何在CMainForm类中修改CMyView中的变量,,急!!!!
hDll=LoadLibrary("ResourceDLL.dll");
if(hDll==NULL)
AfxMessageBox("Can't Load the library");
else AfxMessageBox("success");
AfxSetResourceHandle(hDLL);
...
}
这样以后你再使用CDialog创建对话框时,对话框将来自你的资源DLL,而不是.exe文件。如果你在程序中还要使用.exe中的资源,你需要在 AfxSetResourceHandle之前,先使用 AfxGetResourceHandle保存当前的资源文件句柄。 2,SDK方式。你在调用CreateDialog或DialogBox时,它们的第一个参数都是HINSTANCE,就是你LoadLibrary获得的句柄。你不需要使用FindResource,CreateDialog或DialogBox会自动查找资源并加载。