删除功能区按钮但仍会出现链接器错误

时间:2013-03-11 19:19:01

标签: c++ visual-studio-2010 mfc ribbon

我尝试删除一个按钮(我使用错误的父类错误地创建了一个事件处理程序),但即使我从功能区中删除了按钮,我仍然会收到有关删除的处理程序的链接器错误。这是在带有MFC C ++项目的Visual Studio 2010 Pro上。

编辑: 例如,我有一个id为BtnTargetPS3和2个函数的按钮

void CAboutDlg::OnTargetPS3()
{
    // TODO: Add your command handler code here
}


void CTheApp::OnBtntargetps3()
{
    // TODO: Add your command handler code here
}

我希望删除第一个,但是当我这样做时,我会发现链接器错误,因为它仍然需要它? 当我删除该按钮时,当我删除这两个函数时,我仍然会遇到链接器错误。

2 个答案:

答案 0 :(得分:0)

您删除了按钮,但我认为与该按钮相关的功能仍然存在 所以搜索它并删除不必要的东西。

答案 1 :(得分:0)

向导为事件添加消息处理程序会导致对源代码进行3次更改。

1 - 在BEGIN_MESSAGE_MAP/END_MESSAGE_MAP文件中的.cpp块内添加了消息路由宏。

2 - 处理程序函数的代码实现,作为类的成员函数,位于.cpp文件中。

3 - {{AFX_MSG(ClassName)/}}AFX_MSG文件中.h块中处理函数的原型声明。

很可能您的问题是由删除第1项和第2项引起的,但忘记了第3项。