Pages

2014/05/01

[C#] コマンドプロンプトの窓を非表示にする


アプリケーションの中で、Process.Start メソッドを使用して他のコンソール・アプリケーションの EXE を起動させるとき、しばしば「黒い窓」を出したくないという要望がある。
そういう場合には ProcessStartInfo クラスのプロパティを設定するとよい。
var startInfo = new ProcessStartInfo();
startInfo.FileName = @".\Test2.exe";
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;

// さらに処理終了まで同期して待つ場合
var process = Process.Start(startInfo);
process.WaitForExit();
コマンド・プロンプトを表示せずにコンソール・アプリケーションを実行するには?[C#、VB]- @IT
http://www.atmarkit.co.jp/fdotnet/dotnettips/654nowinexec/nowinexec.html


なお、窓を完全に非表示にしたい場合は、プロジェクトのプロパティから、アプリケーションの種類を「Windows フォーム アプリケーション」に変更する。
この設定を行うと、まったくウィンドが出ずに処理が開始される。

コマンド・プロンプトを表示しないコンソール・アプリケーションを作成するには?[C#、VB]
http://www.atmarkit.co.jp/fdotnet/dotnettips/837nodisplayconsole/nodisplayconsole.html
Related Posts Plugin for WordPress, Blogger...