我在Windows 7 + NetBeans + MinGW上有C ++项目。他们多年来一直工作得很好。昨天,由于硬件问题,我不得不使用新的Windows 7 PC。我使用旧安装的导入配置文件安装了NetBeans。我将MinGW和我的项目文件夹复制到新PC上。但是,它们都不起作用。
我创建了一个Hello World C ++程序。清洁&建立在NetBean上的确定,但是当它运行时它说RUN FAILED
。在dos提示符下运行它,它说The application was unable to start correctly (0xc0000013)
。将源的文件扩展名从.cpp
更改为.c
,它可以正常工作。搜索了网络,发现[MS-ERREF].pdf
错误代码意味着STATUS_NO_MEDIA_IN_DEVICE
,这似乎并不相关。
进一步搜索,找到了一个软件Dependency Walker
,运行它并发现Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
通过DLL树找到了3个导出点:InterlockedExchange in KERNEL32.DLL
,__p__environ in MSVCRT.DLL
和{ {1}}。我可以在MinGW __p__fmode in MSVCRT.DLL
中找到__p__environ
,但不能include\stdlib.h
。
有些帖子说,混合64位dll和32位appn可能是原因。但我的项目都是混合的,他们在我的旧PC上运行良好。感谢是否有人能告诉我在哪里寻找原因。
编辑:
进一步测试我的__p__fmode
程序,发现如果我使用cpp标头,如Hello World
或#include <cstdlib>
,则编译器无法找到它们。所以我重新安装MinGW,但它让事情变得更糟。现在我甚至无法编译任何cpp,无论是否有cpp&#39; #include <iostream>
。清洁&amp;建立程序导致
#include
请帮忙。