2015-06-30 37 views
0

有人更改resource.h文件中某个加速器的数值,并且因为加速器停止工作。MFC加速器资源ID冲突?

(这是工作的旧值)

#define IDR_DELETE_FROM_ACCELERATOR 32873 

(不工作新值)

#define IDR_DELETE_FROM_ACCELERATOR  22873 

相关代码:

ON_COMMAND(IDR_DELETE_FROM_ACCELERATOR, OnDeleteFromAccelerator) 

void CMyViewClass::OnDeleteFromAccelerator() 
{ 
///.... 
} 

在这两种情况下,该数值是独一无二的(不冲突)。

MSDN,看来这两个数值应该是有效的。

我看懂了吗?

我可以简单地将该值重新编号为工作的值,但我想了解为什么它停止工作。

谢谢,

最大。

+3

您是否尝试清理并重建项目?有时资源和代码不同步。 – Paul

+0

是的,我做了重建(并删除了所有的临时文件)。 – Max

回答

0

阅读TN020更多关注。

在表中指出:

ID_   commands    0x8000 through 0xDFFF 

为0x8000十进制为32768

22873比低。