左右Cwnd::Create()功能出现afxwin1.inl line:21错误的解决方案
我最近在调试dll时刻,有一种模糊的断言错误,它是由主程序创建MFC 扩张DLL控制出口(从控制继承CWnd分类)时刻,呼叫Create()下列说法错误的功能:
调试跟进去:
file:afxwin1.inl
line:21
发现是以下的断言语句报错:
_AFXWIN_INLINE HINSTANCE AFXAPI AfxGetResourceHandle()
{
ASSERT(afxCurrentResourceHandle != NULL);//这里出错!
return afxCurrentResourceHandle;
}
费了非常大的周折才解决,事实上就是犯了一个非常低级的错误,dll的字符集不匹配,mfc dll的字符集为UNICODE。但 我调用Create()函数时传进去表格命名ansi字符集,所以不匹配!
版权声明:本文博主原创文章,博客,未经同意不得转载。