如何在 Windows 11 中隐藏控制台

问题描述 投票:0回答:2

我编写了一个应该在后台运行的程序。我尝试编写一些代码,但它们都不起作用。控制台在 Windows 10 中是隐藏的,但在版本 11 中不起作用。我使用的是这个编译器 x86_64-w64-mingw32-gcc

我正在尝试使用此代码:

ShowWindow(GetConsoleWindow(), SW_HIDE)

然后我尝试了这段代码,但结果是一样的:

AllocConsole();
ShowWindow(FindWindowA("ConsoleWindowClass", NULL), 0);

然后我尝试了这段代码,但结果是一样的:

ShowWindow(GetConsoleWindow(),0);
c++ c windows winapi console
2个回答
2
投票

根据博客:Windows 终端现在是 Windows 11 中的默认设置

如果您使用默认的 Windows 终端,则无法隐藏控制台。

我建议您可以尝试在设置中将终端更改为

Windows Console Host


0
投票

根据这篇文章:https://github.com/microsoft/terminal/issues/15311,诸如

ShowWindow(GetConsoleWindow(), SW_HIDE)
之类的东西将不起作用。

Windows 11 上的一种解决方案是使用 conhost:

conhost C:\你的应用程序的路径

这对我来说效果很好。但是,如果您将其设为桌面快捷方式,防病毒软件可能会阻止它。

希望有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.