vs2010报错,error2440

类型转换问题,无法从BOOL转成AFX_PMSG
error C2440: “static_cast”: 无法从“BOOL (__thiscall CMakeDLJZ::* )(void)”转换为“AFX_PMSG”

```c++

ON_BN_CLICKED(IDC_BTN_MDLJZ_JS, OnBtnMdljzJs)

//这里是函数定义
BOOL CMakeDLJZ::OnBtnMdljzJs()
{

直接改成void,下面的代码就报错了,这个怎么办啊

OnBtnMdljzJs定义发出来看看

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 建议你看下这篇博客👉 :Visual Studio上一些Error的解决方案
  • 除此之外, 这篇博客: VS2022 支持XP中的 Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d] 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    报这个错误,是因为把项目配置成了静态库 (.lib) ,但是却将运行库类型配置成 DLL,冲突了,所以报错
    在这里插入图片描述

    配置属性 —> 常规 —> 项目默认值 —> 配置类型
    在这里插入图片描述

    配置属性 —> C/C++ —> 代码生成 —> 运行库

    • 多线程(/MT)— “MFC的使用”:在静态库中使用MFC
    • 多线程DLL(/MD)— “MFC的使用”:在共享DLL中使用MFC
      在这里插入图片描述

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^