0

WinForm プロジェクトでコンソールに書き込む方法はありますか?

プロジェクトの種類をコンソールに変更しても WinForm のままであることはわかっていますが、CMD からプログラムを起動すると、プログラムが終了するまで CMD の実行が停止します。コンソールからアプリを次のように起動すると、これは起こりません。 Winformsですが、コンソールに書き込めません...

質問は次のとおりです。

WinForms でコンソールに書き込む方法、またはアプリが CMD から起動されたときに CMD の実行を停止しない方法 (アプリケーションの CMD で "Start /B" を使用しないようにするため)。

4

1 に答える 1

3

AllocConsoleを使用して、プロセスを新しいコンソールに接続できます。その後、Console.WriteLine期待どおりに動作するはずです。その関数の P/Invoke シグネチャは

[DllImport("kernel32")]
static extern bool AllocConsole();

ただし、プログラムを から起動するcmdと、プログラム用の別のコンソール ウィンドウが表示され、親コンソールの再利用は不可能になることに注意してください。しかし、それがあなたの目標であることを私がどのように理解したか。

于 2013-04-29T04:36:18.580 に答える