一 在你的程序的资源中添加你需要的资源,这个用以产生 资源ID
二新建一个空的DLL工程
三 将你程序目录下的res文件夹,Resource.h文件, .aps文件,.rc文件拷贝到你刚才建的DLL工程下,并在DLL工程将Resource.h
和.rc文件添加进工程中
四:修改你需要修改的资源的值,然后编译出一个DLL,将这个DLL放进你的程序的DEBUG目录下,其他目录也可以
五在一个你的程序初始化的时候,使用下面的代码去替换资源,这个步骤可以在类的初始化的时候进行一次,以后就不用再替换:
拷贝文件后,如果你打开资源,有时可能会出现“资源在另一个编辑器中打开"的错误,这个时候,你可以重新编译一次,然后再打开资源,如果还不行,把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文件删除掉,再编译,这样应该能行