
这是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 ^ >^)".
-----------------------------------------------------------------
为这问题白白浪费了一晚上,内牛满面啊T_T.............
本文介绍了一个关于C++/CLI程序启动时遇到的奇怪错误及其解决办法。该错误源于程序使用了未初始化的全局对象,通过修改项目的入口点可以避免此问题。文章详细解释了修改步骤和原理。

被折叠的 条评论
为什么被折叠?



