投稿者 魔界の仮面弁士  (社会人) 投稿日時 2020/8/20 09:50:35
サブシステムが異なるためですね。

プロジェクトのプロパティの[アプリケーション]タブにある
『アプリケーションの種類(A):』という項目が、
`Window フォーム アプリケーション` になっているか
`コンソール アプリケーション` になっているかが分かれ目です。

EXE 内部に記録される IMAGE_OPTIONAL_HEADER には
Subsystem というものを記録する 2 バイトの領域があるのですが、ここに
3 (IMAGE_SUBSYSTEM_WINDOWS_CUI) が記録されていればコンソールアプリで、
2 (IMAGE_SUBSYSTEM_WINDOWS_GUI) が記録されていればデスクトップアプリです。

その他の値についてはこちらを参照。
https://tech.blog.aerie.jp/entry/2015/12/24/013344#Subsystem


Windows フォームアプリケーションとしてビルドされた EXE であっても、
アプリ内から AllocConsole を呼び出せば、プロセスに新しいコンソールを割り当てて
コンソール画面への出力を行うことはできます。(プログラム終了時には FreeConsole が必要)
http://bignight.hatenablog.com/entry/2015/01/14/191931

望むものとはちょっと違うかもしれませんが…。