При попытке выполнить cmd.exe с SW_HIDE
параметра Я:Почему работает ShellExecute() ing cmd.exe?
ShellExecute(NULL, "open", "cmd.exe", NULL, NULL, SW_HIDE);
cmd.exe фактически выполняется скрыто! Я не понимаю, почему это произошло, консольное окно cmd.exe считается «нормальным» окном, которое принимает параметр nCmdShow
, или cmd.exe при его исполнении видит, что я прошел SW_HIDE
для параметра nCmdShow
и решает не показывать консольное окно?
Примечание: Я попробовал этот код на Windows 7.
CREATE_NO_WINDOW это способ сделать это. Приложения в режиме консоли не получают возможности создавать окна. Система обрабатывает это. ShellExecute - для глаголов оболочки. Для создания процессов используйте CreateProcess. –
@David Heffernan Итак, при выполнении cmd.exe с помощью 'CreateProcess()' с параметром 'CREATE_NO_WINDOW' система не будет создавать консольное окно для cmd.exe? – James
Исправить. Это правильный способ сделать это. –