通常是程序resource找不到(不匹配)。
1、直接控件删除后,
.H文件里的声明没有删除.
Dodataexchange()里面关联变量未清除。
a)删除了对话框控件,但是没有删除相应控件代码;
b)修改了资源ID,资源ID对不上号;
c)将MFC程序做成打包软件,安装在没有VC的机器上,出现错误,在有VC环境的机器上运行则没有这个错误。
解决办法:对于前面两种情况,删除相应控件或资源代码即可;
第三种情况在无VC环境的机器上,注册程序中使用的控件即可。
补充:在autocad开发中,如果不使用CAcModuleResourceOverride类进行资源切换,而VS解决方案中存在多个工程,工程间的资源ID如果重复的话,也会出现这个问题。