Я знаю, что это старо, но я подумал, что опубликую что-нибудь, когда люди найдут это через поиск.
Хотя мне нравится ответ Коди Грея за корректность дизайна, иногда у вас нет выбора.
Если вы хотите запустить программу без перехода в новое окно (оно отображается в фоновом режиме или свернуто) или вообще не создавать окно, попробуйте взглянуть на ShellExecute
и ShellExecuteEx
функций. Аргумент nShowCmd
(или nShow
) дает вам (среди прочих) варианты:
SW_HIDE
Скрывает окно и активирует другое окно.
SW_SHOWMINNOACTIVE
Отображает окно как свернутое окно. Активное окно остается активным.
Как сказано в документации, SW_HIDE создает процесс, запускающий исполняемый файл, который вы ему даете, но если эта программа обычно создает окно, ничего не появляется.