GraveDollの備忘録ブログ

勉強したことや捗るグッズの備忘録です。

.Net Framework 4.xでDebug Viewを使ってデバッグ出力を確認する

Windowsアプリを開発してデバッグする際、開発環境のない他のコンピュータ上でプログラムを実行してデバッグ出力を確認したい時があると思います。
C++ではOutputDebugString、C#ではSystem.Diagnostics.Debug.WriteLineやSystem.Diagnostics.Trace.WriteLineなどを使うことでVisual Studio上でデバッグ出力を確認できます。
しかし、とりあえず処理が想定通り行われているか確認したいだけのとき、いちいちVisual Studioをインストールするのも面倒です。
また、人のコンピュータを借りてテストするときなど、何らかの理由でVisual Studioを入れることができない状況もあるのではないでしょうかw
そんなときに役立つのがDebug Viewです。
technet.microsoft.com

Debug View(インストール不要)を実行しておけば、Visual Studioなどの開発環境がなくても実行中のWindowsプログラムのデバッグ出力を確認できます。
しかしC#で.Net Framework4.x環境の場合、そのままではDebug Viewでデバッグ出力を確認できません。
そんなときはDebug Viewの[Capture] - [Capture Global Win32]にチェックを入れ、C#のプログラムに

System.Diagnostics.Debug.Flush();//System.Diagnostics.Debug.WriteLineを使う場合

または

System.Diagnostics.Trace.Flush();//System.Diagnostics.Trace.WriteLineを使う場合

を記述します。
例えば、

System.Diagnostics.Debug.Flush()
System.Diagnostics.Debug.WriteLine("Hello!");
System.Diagnostics.Debug.WriteLine("This is a debug message.");

という感じに記述すればDebug Viewでデバッグ出力を確認できます。