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

Posted

技术标签:

【中文标题】删除功能区按钮但仍然出现链接器错误【英文标题】:Removing Ribbon Button but still get linker errors 【发布时间】:2013-03-11 19:19:00 【问题描述】:

我尝试删除一个按钮(我错误地使用错误的父类创建了一个 on 事件处理程序),但即使我从功能区中删除了按钮,我仍然收到有关已删除处理程序的链接器错误。这是在带有 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

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

【问题讨论】:

这么少的细节很难回答你的问题。 刚刚添加了更多信息,感谢您的宝贵时间 链接器显示什么错误信息?这会很有帮助。 【参考方案1】:

通过向导为事件添加消息处理程序会导致源代码发生 3 处更改。

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

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

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

您的问题很可能是由于删除了第 1 项和第 2 项而忘记了第 3 项。

【讨论】:

【参考方案2】:

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

【讨论】:

不,我确实删除了该功能,这就是我收到链接器错误的原因。

以上是关于删除功能区按钮但仍然出现链接器错误的主要内容,如果未能解决你的问题,请参考以下文章

已删除 GoogleMaps 可可豆荚,现在出现链接器错误

使用 pod install 后出现 Swift 错误(clang:错误:链接器命令失败,退出代码为 1)

Firebase CocoaPods 出现重复符号链接器错误

facebook SDK3.1 和 Xcode 4.5 链接器错误

GLEW 链接器错误

xcode 中的错误:clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)