Debug Assertion Failed! File:afxwin1.inl Line:22

这种断言估计是尝试去load一个未分配的资源id造成的。

 

如果是 dll 的问题:

首先分析是哪个函数调用之后,出现 AfxGetResourceHandle()==NULL 的问题;
然后,
  如果这个 dll 是自己的 MFC 库,在输出函数的时候第一行,使用 AFX_xxx 的那个宏定义;
  如果这个 dll 是第三方的,在调用前通过 AfxGetResourceHandle() 保存当前 HANDLE 值,在调用函数之后,调用 AfxSetResourceHandle() 恢复 HANDLE 值;
  或者,你是否在 dll 的某个 callback 中调用函数的时候出现这个 ASSERT 的错误了;如果是,想办法在函数调用前,把 resource 的 HANDLE 保存起来进行调用。(这个比较复杂,可能没有讲清楚)

如果是修改 .rc 文件导致的问题,看看是否你的 resource.h 中某些 ID 值范围与缺省的资源 ID 进行冲突了,找到冲突的 ID 值,修改 resource.h ,然后 rebuild all。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值