假设源解决方案资源名称为A.rc,目标解决方案为B.rc。首先编辑A.rc,找到dialog资源ID那段,类似如下:
IDD_AUTH DIALOGEX 0,0, 186, 95
STYLE DS_SETFONT |DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION"获取权限"
FONT 8, "MSShell Dlg", 400, 0, 0x1
BEGIN
DEFPUSHBUTTON "确定",IDOK,36,60,50,14
PUSHBUTTON "取消",IDCANCEL,109,60,50,14
LTEXT "请输入密码:",IDC_STATIC,36,17,103,15
EDITTEXT IDC_EDIT_AUTH,36,35,123,14,ES_PASSWORD| ES_AUTOHSCROLL | ES_NUMBER
END
此外还有一段内容,类似如下:
IDD_AUTH, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 179
TOPMARGIN, 7
BOTTOMMARGIN, 88
END
这两段内容就是需要拷贝的东西。打开B.rc,然后将这两段分别拷贝到对应的段落内。
之后再将ID对应的数字从Resource.h中拷贝到目标Resource.h内,此时要注意,ID对应的数字可能在目标资源内
有重复,如有重复,修改为不重复的即可。
如果此dialog有对应的类的话,将类的A.cpp和A.h文件都拷贝到目标解决方案内,然后再将
#include"Resource.h"
加入A.h内,否则会报错“找不到资源ID”。