我需要为我的主进程创建一个子进程作为套接字侦听器/服务器,并使用此调用来实现目标:
bSuccess = CreateProcessA(NULL,
cmdLineArgs, // command line
NULL, // process security attributes
NULL, // primary thread security attributes
TRUE, // handles are inherited
HIGH_PRIORITY_CLASS, // creation flags
NULL, // use parent's environment
NULL, // use parent's current directory
&siStartInfo, // STARTUPINFO pointer
&piProcInfo); // receives PROCESS_INFORMATION
谁能说明需要做什么才能使子进程的窗口不显示?每次主要的中央进程创建一个子进程时,都不希望有一个可见的进程窗口。
稍后编辑我使用:
HWND hWnd = GetConsoleWindow();
if (hWnd != 0)
{
ShowWindow( hWnd, SW_HIDE);
}
在子进程的主要功能中,但这并不是最好的解决方案,因为窗口仍然会显示几分之一秒。如果一个有几个子进程,每个子进程都有自己的窗口冒泡到屏幕上,它仍然不优雅。是否需要为编译器设置任何标志以生成“无控制台”输出?
我正在使用 Visual Studio 2010。