C++/CLI程序启动时_CrtIsValidHeapPointer(pUserData)错误
2011-01-12 09:55
465 查看
奇怪的错误,坑死个人啊!!当C++/CLI程序引用了native lib顺利编译之后,程序启动有可能出现以下错误(_CrtIsValidHeapPointer(pUserData)):
这是ms的一个已知bug,原因:
The reason why you get this error is that a winforms application has a managed entry point. The initialization of the native global objects is done by the CRT (C RunTime) startup routine. Since in this case there is no CRT startup routine the MyBoard global object fails to initialize correctly.
IDE is specific the entry of ManagedApp as "main". However, using "main" will bypass a lot of CRT's startup initialization.
解决方法:
右键点击项目--->properties--->link--->advanced
把Entry Point从main改为 "?mainCRTStartupStrArray@@$$FYMHP$01AP$AAVString@System@@@Z"
原理:
That should re-enable the CRT startup code which initializes the internal CRT variables.That symbol is really the mangled name for "int __clrcall mainCRTStartupStrArray(cli::array<class System::String ^ >^)".
这是ms的一个已知bug,原因:
The reason why you get this error is that a winforms application has a managed entry point. The initialization of the native global objects is done by the CRT (C RunTime) startup routine. Since in this case there is no CRT startup routine the MyBoard global object fails to initialize correctly.
IDE is specific the entry of ManagedApp as "main". However, using "main" will bypass a lot of CRT's startup initialization.
解决方法:
右键点击项目--->properties--->link--->advanced
把Entry Point从main改为 "?mainCRTStartupStrArray@@$$FYMHP$01AP$AAVString@System@@@Z"
原理:
That should re-enable the CRT startup code which initializes the internal CRT variables.That symbol is really the mangled name for "int __clrcall mainCRTStartupStrArray(cli::array<class System::String ^ >^)".
相关文章推荐
- C++/CLI程序启动时_CrtIsValidHeapPointer(pUserData)错误
- C++/CLI程序启动时_CrtIsValidHeapPointer(pUserData)错误
- C++/CLI程序启动时_CrtIsValidHeapPointer(pUserData)错误
- C++/CLI程序启动时_CrtIsValidHeapPointer(pUserData)错误
- 【vc++ 2010问题】使用visual c++/studio 2010编译程序后,出现_CrtIsValidHeapPointer(pUserData)错误
- 调试错误 ASSERTE(_CrtIsValidHeapPointer(pUserData))
- VS调试错误_ASSERTE(_CrtIsValidHeapPointer(pUserData))
- _ASSERTE(_CrtIsValidHeapPointer(pUserData))错误详解
- _CrtIsValidHeapPointer(pUserData) 错误
- VS调试程序_ASSERTE(_CrtIsValidHeapPointer(pUserData))崩溃的原因以及解决方法
- 在EXE程序中调用DLL文件后出现_CrtIsValidHeapPointer(pUserData)问题的解决方法
- [转] 调试错误 ASSERTE(_CrtIsValidHeapPointer(pUserData))
- _ASSERTE(_CrtIsValidHeapPointer(pUserData))错误详解
- delete释放内存,发生错误,显示DBGHEAP.C中的_ASSERTE(_CrtIsValidHeapPointer(pUserData))
- VS调试错误_ASSERTE(_CrtIsValidHeapPointer(pUserData))
- 遇到该Vector析构时_CrtIsValidHeapPointer(pUserData) 的bug已经好几天了
- _BLOCK_TYPE_VALID(pHead-&gt;nBlockUse),_CrtIsValidHeapPointer(pUserData),动态链接库内存分配
- vs调试报错:“_ASSERTE(_CrtIsValidHeapPointer(pUserData)) ”的问题解决
- mfc _CrtIsValidHeapPointer(pUserData) 异常出现
- Expression: _CrtIsValidHeapPointer(pUserData)