9da*_*dan 11 c c++ windows mfc console-application
(我搜索了SO的答案,发现这个问题没有明确的解决方案.)
我正在研究MFC GUI程序.该程序运行各种子程序,包括控制台程序和shell命令脚本(.cmd).
最初它显示了一个GUI窗口和一个控制台窗口(由其创建AllocConsole),因为子进程有许多控制台输出.但是很多用户抱怨控制台窗口所以我们决定隐藏控制台窗口.
首先尝试如下:
if (AllocConsole())
{
::ShowWindow(::GetConsoleWindow(), SW_HIDE);
}
Run Code Online (Sandbox Code Playgroud)
好的,没有控制台窗口,但在控制台创建时有可见的闪烁.我已经尝试了几个CreateProcess子进程创建选项,以防止完全显示控制台窗口,但总之失败,我认为这几乎是不可能的.
这不是什么大不了的事.我们可以在启动时忽略临时窗口闪烁.
但完全隐藏儿童游戏机窗口真的不可能吗?
Joh*_*ohn 15
为CreateProcess调用设置STARTUPINFO,如下所示:
STARTUPINFO si = { 0 };
si.cb = sizeof(si);
si.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;
si.hStdInput = GetStdHandle(STD_INPUT_HANDLE);
si.hStdOutput = GetStdHandle(STD_OUTPUT_HANDLE);
si.hStdError = GetStdHandle(STD_ERROR_HANDLE);
si.wShowWindow = SW_HIDE;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10939 次 |
| 最近记录: |