触发ASSERT(afxCurrentResourceHandle != NULL)错误的原因
2009-03-09 08:43
477 查看
这种错误的原因是由于要使用MFC库中的某些资源,但是MFC并没有被初始化.
这种情况多发生在atl和其它非MFC工程,后追加MFC的头文件获得了部分支持
现象:1) 编译可以通过 2)有些MFC类可以使用 3) 使用CRectTracker, CMenu.LoadMenu....时出现触发ASSERT(afxCurrentResourceHandle != NULL)错误
解决办法:
在模块初始化后,要使用的MFC类前,添加如下代码:
//!!!!MFC初始化
if(!AfxWinInit(::GetModuleHandle(NULL),NULL,::GetCommandLine(),0))
{
//??_Module.LogEvent(_T("MFC初始化错误!"), EVENTLOG_ERROR_TYPE );
return 1;
}
这种情况多发生在atl和其它非MFC工程,后追加MFC的头文件获得了部分支持
现象:1) 编译可以通过 2)有些MFC类可以使用 3) 使用CRectTracker, CMenu.LoadMenu....时出现触发ASSERT(afxCurrentResourceHandle != NULL)错误
解决办法:
在模块初始化后,要使用的MFC类前,添加如下代码:
//!!!!MFC初始化
if(!AfxWinInit(::GetModuleHandle(NULL),NULL,::GetCommandLine(),0))
{
//??_Module.LogEvent(_T("MFC初始化错误!"), EVENTLOG_ERROR_TYPE );
return 1;
}
相关文章推荐
- 触发ASSERT(afxCurrentResourceHandle != NULL)错误的原因
- 触发ASSERT(afxCurrentResourceHandle != NULL)错误的原因
- 触发ASSERT(afxCurrentResourceHandle != NULL)错误的原因
- 触发ASSERT(afxCurrentResourceHandle != NULL)错误的原因
- 触发ASSERT(afxCurrentResourceHandle != NULL)错误的原因
- 触发ASSERT(afxCurrentResourceHandle != NULL)错误的原因
- [转载]触发ASSERT(afxCurrentResourceHandle != NULL)错误的原因
- 调用HINSTANCE hInst = AfxGetInstanceHandle();程序在ASSERT(afxCurrentInstanceHandle != NULL);崩溃
- Cannot set property ‘innerHTML’ of null 错误原因
- android错误-nullpointException的原因
- assert(pMap != NULL)错误的解决办法
- ASSERT(FromHandlePermanent(hWndNew) == NULL)
- Cannot set property ‘innerHTML’ of null 错误原因
- Unable to handle kernel NULL pointer dereference at virtual address 0000错误解决
- float和Float的问题,错误原因:cannot be translated into a null value
- Could not open ServletContext resource 错误的一个原因
- Android开发中java.lang.RuntimeException: Unable to start activity ComponentInfo{xxx}: java.lang.NullPointerException 错误的集中原因及解决办法
- java.lang.NullPointerException错误处理方法及原因分析
- java.lang.NullPointerException错误的可能原因分析
- The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.报该错误的一种原因。