我在Windows服務中使用Microsoft Log Parser。該程序工作在一個普通的網頁,但是當我把代碼放入Windows服務中時,它不起作用。我在Windows服務中放入了Breakponts,但是當我運行代碼時,程序不會停在斷點處。因此,通過我的故障排除,我將問題縮小到Log Parser軟件和Linq。所以無論是Linq還是日誌解析器軟件都會造成這個問題。你們有什麼想法嗎?什麼是在Visual Studio 2008中調試Windows服務程序的最佳方法
5
A
回答
2
根據程序的運行方式,我在過去做了很多這樣的事情。我認爲最簡單的方法是在Debugger.Launch()周圍配置一個if #DEBUG預處理器指令,這樣當您構建項目時,Debugger.Launch()調用將不會被編譯到程序集中。
我們完成此任務的一種方法是使用System.Windows.Forms.MessageBox.Show(「attach」),它允許我們在顯示「attach」對話框時手動連接到調試器。
我不喜歡的最後一種方法是根據傳入的命令行參數更改服務的行爲。基本上選擇不使用ServiceBase.Run啓動服務,只要特定參數被觸發,但調用類它封裝了服務的行爲/主要功能。
5
您需要將調試器直接附加到Windows服務。這可能會幫助你:http://msdn.microsoft.com/en-us/library/7a50syb3%28VS.80%29.aspx。
2
你想調試OnStart方法嗎?如果是這樣,您可以使用System.Diagnostics.Debugger.Launch()
或System.Diagnostics.Debugger.Break()
方法在on start方法運行時獲得附加調試器的機會,否則,您總是會遲到並附加調試器。
2
我認爲胖貓建議將調試器附加到服務過程聽起來是對的。如果仍然不起作用,請嘗試使用Debug.WriteLine和DebugView。
相關問題
- 1. 在Visual Studio中調試程序的最佳方式是什麼?
- 2. 最佳Visual Studio 2008調試教程?
- 3. 在Visual Studio中編寫獨立程序的最佳方法是什麼?
- 4. 什麼是調試android程序的最佳方法?
- 5. 調試Shoes應用程序的最佳方法是什麼?
- 6. 什麼是在Visual Studio 2008中測試代碼片段的最快方法?
- 7. 無法在Visual Studio 2008中調試Web服務項目
- 8. 在Visual Studio 2008中導航Silverlight XAML的最佳方式是什麼?
- 9. 什麼是在Visual Studio 2008/2010代碼中書籤位置的最佳方式?
- 10. 測試服務器版本的最佳方法是什麼?
- 11. 從azure sql調用Web服務的最佳方法是什麼?
- 12. 什麼是記錄信息或調試Windows服務的最簡單方法?
- 13. Windows服務和配置應用程序在Visual Studio中的最佳實踐
- 14. 在eclipse中調試Mojarra和Primefaces的最佳方法是什麼?
- 15. 在Visual Studio中調試和測試微型過濾器驅動程序的最簡單方法是什麼?
- 16. 什麼是Visual Studio 2008解決方案中的最佳項目數量?
- 17. 在Android中創建服務的最佳方法是什麼?
- 18. Visual Studio 2008調試器條中的這個圖標是什麼?
- 19. 在Windows上調試ODBC驅動程序的最佳方法
- 20. 無法在Visual Studio 2012中調試Windows服務
- 21. 在.NET中註冊現有Windows服務的最佳方法是什麼?
- 22. 什麼是在Visual C#中遵循的最佳調試策略?
- 23. 測試Cassandra應用程序的最佳方法是什麼?
- 24. Visual Studio 2008調試
- 25. 什麼是遠程控制/調試.NET應用程序的最佳方法?
- 26. 在Visual Studio 2010中測試移動網站的最佳方式是什麼?
- 27. 使用Visual Studio 2008管理經典asp前端的最佳方式是什麼?
- 28. 使用Visual Studio 2008遠程調試Web應用程序的服務器端
- 29. 在Visual Studio中檢查縮小的JavaScript文件的最佳方法是什麼?
- 30. 調試Windows CGI的最佳方法
重申最後一點 - 我相信你也可以檢查'Environment.UserInteractive'。 –