2010-02-15 101 views
5

我有一個第三方.NET庫,可以將一些關鍵診斷信息輸出到TextWriter實例。我希望在調試模式下將此信息轉儲到Visual Studio 2008的輸出窗口,如果不在調試模式下,則將其忽略。有什麼辦法可以獲得對使用這個輸出窗口的輸出流的引用,所以我可以創建一個使用它的TextWriter如何獲得對寫入Visual Studio「輸出」窗口的輸出流的引用?

要使用控制檯輸出,我可以做...

foo.LogTo(Console.Out); 

使用這個接口,我可以記錄發送到輸出窗口的信息?

回答

1

Visual Studio允許使用writing of messages to the output window through the Debug class since .NET 1.1。這就是說,很容易創建自己的TextWriter實現,它只是將調用轉發給Debug類中的相應方法。將內容寫入TextWriter時,您可以調用Debug類方法,它將出現在輸出窗口中。另外,由於您正在調用Debug類,因此當您不處於調試模式時,將不會輸出輸出(因爲Debug類的方法上的Conditional屬性)。

+0

謝謝......我想我並沒有真正考慮過創建一個我自己的TextWriter,它只是委託給Debug.WriteLine,但我認爲這相對簡單,可能我最終會做。 –

1

您可以使用OutputDebugString API或使用Debug.WriteLine()轉發數據來創建自己的TextWriter派生類。

相關問題