Я не совсем уверен, но я думаю, что это уйдет, если вы создадите окно верхнего уровня. Большинство приложений Windows, предназначенных для запуска из графического интерфейса, должны создавать окно верхнего уровня, даже если они не собираются делать его видимым (не вызывать ShowWindow).
Кроме того, вы, вероятно, хотите получать уведомления некоторых типов, которые Windows отправляет в окна верхнего уровня (по крайней мере, команду закрытия, когда пользователь выходит из системы и т. Д.).
И в какой-то момент вы, вероятно, захотите установить значок уведомления, я думаю, что необходимо иметь окно верхнего уровня для работы области уведомлений в трее (по крайней мере, это было, когда я последний раз использовал этот интерфейс в 1996 году). ).
Я думаю, что все, что предназначено для запуска из графического интерфейса, должно создавать окно, даже если оно невидимое.