首先,很抱歉,如果这是错误的类别,因为我不确定这个问题的原因是什么。
出于教育目的,我创建了一个小型“Hello World”应用程序
#include <iostream>
int main() {
std::cout << "Hello World\n";
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用 Visual Studio 和 MINGW-64(g++ -m64 main.cpp) 将其编译为 64 位应用程序。它在我的 Windows 计算机上完美运行,但是当我尝试在最新的 Windows PE 中运行它时,它不会打印出任何内容。我也尝试过使用 std::cin 以便程序不会立即停止,但同样的事情发生 - 没有输出,也没有错误。

我知道 WinPE 在包含的库和子系统方面非常有限,但我真的认为这个简单的 Hello World 应用程序可以运行。WinPE环境是64位的,这就是为什么我编译为64位
有什么想法我应该从哪里开始吗?
我发现了实际的问题。我没有静态编译应用程序,这导致它依赖于 WinPE 中找不到的依赖项。我使用“-static”标志重新编译了它,现在它在 WinPE 和桌面版本的 Windows 上都能按预期工作。
| 归档时间: |
|
| 查看次数: |
3772 次 |
| 最近记录: |