2017-07-26 45 views
1

語境的Debug.WriteLine在Windows服務的OutputDebugString

注:log4net的從問題中分離出來,只是寫的背景下更多的診斷事實

我使用log4net的RollingFileAppender進行和DebugAppener。該應用程序可以在控制檯模式下啓動,但也可以作爲服務安裝。當啓動stanalone時,所有DebugAppener都會通過Mark Russinovich的DebugView確認OutputDebugString。 作爲服務運行時,只有文件日誌寫入無輸出OutputDebugString。

診斷

  • 問題是與log4net的或DebugAppender有關。而在同 問題恰好與
  • 文件正確兩種情況下
寫一個純粹的Debug.WriteLine(「世界,你好」)調用
  • 服務作爲LocalSystem運行(所以可能它不是一個權限問題)

    問題

    我缺少什麼?作爲服務運行時,如何寫入OutputDebugString(使用log4net DebugAppender)?

  • +0

    確實這是一個騙局。抱歉 –

    回答

    1

    的兩種可能的情況是

    • 確保DebugView中在「捕捉」菜單

    以管理員身份運行

  • 檢查勾選在「捕捉全球的Win32」,它應該顯示調試服務的消息。