首先,如果这是错误的类别,对不起,因为我不确定造成此问题的原因是什么。
出于教育目的,我创建了一个小的“ Hello World”应用程序
#include <iostream>
int main() {
std::cout << "Hello World\n";
return 0;
}
我尝试使用Visual Studio以及MINGW-64(g ++ -m64 main.cpp)作为64位应用程序进行编译。它可以在我的Windows计算机上完美运行,但是当我尝试在最新的Windows PE中运行它时,它不会输出任何内容。我也尝试过std :: cin,这样程序不会立即停止,但是会发生相同的事情-没有输出,也没有错误。
我知道WinPE在所包含的库和子系统方面非常有限,但是我真的认为这个简单的Hello World应用程序可以运行。WinPE环境是64位的,这就是为什么我将其编译为64位
有什么想法我应该从哪里开始?
我发现了实际的问题。我没有静态地编译应用程序,这导致它依赖于WinPE中找不到的依赖项。我使用“ -static”标志重新编译了它,现在它在WinPE和Windows桌面版本上都能按预期工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句