资源动态替换的详细步骤
2008-11-18 14:53
260 查看
一 在你的程序的资源中添加你需要的资源,这个用以产生 资源ID
二新建一个空的DLL工程
三 将你程序目录下的res文件夹,Resource.h文件, .aps文件,.rc文件拷贝到你刚才建的DLL工程下,并在DLL工程将Resource.h
和.rc文件添加进工程中
四:修改你需要修改的资源的值,然后编译出一个DLL,将这个DLL放进你的程序的DEBUG目录下,其他目录也可以
五在一个你的程序初始化的时候,使用下面的代码去替换资源,这个步骤可以在类的初始化的时候进行一次,以后就不用再替换:
HINSTANCE Res;
HINSTANCE ResourceDll;
ResourceDll = AfxLoadLibrary(_T("Res.dll"));
if (NULL == ResourceDll)
{
::MessageBox(NULL, _T("Failed to load dll"), NULL, MB_OK|MB_ICONERROR|MB_TOPMOST);
return 0;
}
//切换资源
m_hRes = AfxGetResourceHandle();
AfxSetResourceHandle(theApp.m_hInstance);
AfxSetResourceHandle(ResourceDll);
拷贝文件后,如果你打开资源,有时可能会出现“资源在另一个编辑器中打开"的错误,这个时候,你可以重新编译一次,然后再打开资源,如果还不行,把ncb和opt文件删除掉,再编译,这样应该能行
二新建一个空的DLL工程
三 将你程序目录下的res文件夹,Resource.h文件, .aps文件,.rc文件拷贝到你刚才建的DLL工程下,并在DLL工程将Resource.h
和.rc文件添加进工程中
四:修改你需要修改的资源的值,然后编译出一个DLL,将这个DLL放进你的程序的DEBUG目录下,其他目录也可以
五在一个你的程序初始化的时候,使用下面的代码去替换资源,这个步骤可以在类的初始化的时候进行一次,以后就不用再替换:
HINSTANCE Res;
HINSTANCE ResourceDll;
ResourceDll = AfxLoadLibrary(_T("Res.dll"));
if (NULL == ResourceDll)
{
::MessageBox(NULL, _T("Failed to load dll"), NULL, MB_OK|MB_ICONERROR|MB_TOPMOST);
return 0;
}
//切换资源
m_hRes = AfxGetResourceHandle();
AfxSetResourceHandle(theApp.m_hInstance);
AfxSetResourceHandle(ResourceDll);
拷贝文件后,如果你打开资源,有时可能会出现“资源在另一个编辑器中打开"的错误,这个时候,你可以重新编译一次,然后再打开资源,如果还不行,把ncb和opt文件删除掉,再编译,这样应该能行
相关文章推荐
- maven 打包时动态替换properties,xml资源文件中的配置值
- Android利用Gradle多渠道打包如何动态替换资源,文字
- 手动开发动态资源的步骤注意
- JSP动态网站环境搭建的详细步骤
- 在资源文件添加代码的详细方法和步骤
- maven 打包时动态替换properties资源文件中的配置值
- Delphi中的动态包,有详细建立包的步骤(答案很简单:因为包的功能强大)
- C#动态创建及连接ACCESS数据库的详细步骤
- phpcmsV9静态页面替换动态步骤
- phpcmsV9静态页面替换动态步骤
- 绑定界面动资源画动态替换
- JSP动态网站环境搭建应用中的详细步骤(Tomcat和Apache/IIS的整合)
- maven 打包时动态替换properties资源文件中的配置值
- 代理模式--CGLIB动态代理(内含详细实现步骤及代码)
- 关于动态替换字符串资源的一点实践
- 介绍JSP程序动态网站环境搭建的详细步骤
- JSP动态网站环境搭建应用中的详细步骤(Tomcat和Apache/IIS的整合)
- 关于在软件中添加扫描二维码功能的详细步骤及对应的资源。
- Delphi 编写DLL动态链接库文件的知识和样例(有详细步骤,很清楚)
- 浏览器访问服务器端资源的详细步骤