最近一直在写一个图像处理的软件,由于是多个同学合作,开始也没有进行比较详细的接口定义,所以就出现了ID值冲突的Warning,一般Warning不在同一个Dlg中,问题不是很大,因为在Dlg销毁之后,其中控件就不会再对其他Dlg中的控件产生干扰。
然而不幸的是我们遇到了这个棘手的问题,同一个Dlg中多个控件ID值重复,运行时出现不希望的结果。于是自己就开始手动修改Resource.h中的ID值,不过成功的概率一般比较小,通常很多ID值已经被VC用来进行了其他的定义,打开资源管理中的String值就会看到一些定义了的ID及其使用的ID值。
在网上搜索解决方法,(http://topic.youkuaiyun.com/t/20060714/14/4880565.html)未果,一般都建议不要最好不要修改Resource.h中的ID值,但是我们现在已经出现问题了,不进行手动修改,就要对整个资源进行重新的分配和绘制。
今天中午闲来无事就打开VC6来寻找一下解决方法,留意到在Resource.h中有这样一段宏定义
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_3D_CONTROLS 1
#define _APS_NEXT_RESOURCE_VALUE 130
#define _APS_NEXT_COMMAND_VALUE 32773
#define _APS_NEXT_CONTROL_VALUE 1000