C++ (MFC を使用) で記述された GUI Windows アプリケーションがあり、stdoutストリームを介して出力するために親コンソールに接続されています。ここでは、AttachConsole API とRedirectIOToConsoleメソッドを使用します。
したがって、通常のコンソール アプリケーションから次の行を呼び出した場合 (標準出力にネイティブに出力されます):
_tprintf(_T("Test message.\n"));
期待どおりの出力が得られます。

しかし、(親コンソールが接続された) GUI アプリから同じコード行を呼び出すと、次のようになります。

親コマンド プロンプト ウィンドウに入力できるので、ハングしないことに注意してください。Enter キーを押すと、コマンドとして入力したものは何でも実行されます。
では、親コンソールに制御を戻すために、コンソール アプリから何を呼び出していないのでしょうか?