繁体   English   中英

如何隐藏/显示cmd窗口?

[英]How to hide/show cmd window?

我创建了Win32控制台应用程序,并隐藏了cmd窗口。 因此,如果我的应用程序正在运行,则只有正在运行的进程才能看到它。 如果有办法,我想以以下方式修改我的应用程序:如果我定义了一个参数,它应该显示cmd窗口,但是如果我不使用此参数,那么它应该在不显示cmd窗口的情况下运行。

我已禁用通过以下方式显示cmd窗口:

#pragma comment( linker, "/SUBSYSTEM:WINDOWS" )

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
 ...
 ...
 ...
}

有谁知道如何做到这一点?

坎皮

WinMain的lpCmdLine参数使您可以访问程序的命令行。 您可以简单地读取其值,然后根据其值采取适当的操作。

编辑:在Windows中显示控制台的实际机制有些棘手。 您必须创建控制台,然后重定向标准输出流以对其进行写入。 有这样一个大讨论在这里 ,做了伟大的工作,详细说明是如何工作的,你需要把工作做好哪些代码。

希望这可以帮助!

既然您在其他答案的注释中说过,您可以很好地管理命令行参数部分,那么这是另一部分可能会有所帮助。 我希望您需要隐藏控制台窗口,对吗?

无论如何,请尝试以下操作(未经测试):

ShowWindow(GetConsoleWindowHandle(),SW_HIDE);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM