我正在尋找一種方法來監視正在運行的程序,我有源代碼。基本上,當用戶運行它時,我需要知道順序調用哪些函數和參數。如何以編程方式爲Visual Studio添加跟蹤點?
我可以寫一個跟蹤輸出代碼到所有函數來實現這一點。但是,我不允許修改源代碼。 我發現Visual Studio 2005中的Tracepoint允許我這樣做 - 在不修改源的情況下輸出日誌信息。但我需要將它們添加到所有功能。
由於我有成千上萬的文件和函數,我需要找到一種編程方式來做到這一點。我發現了關於DTE.Debugger.Breakpoints.Add的問題,可以添加一個斷點。但是,我找不到任何跟蹤點的方法。或者項目的斷點信息存儲在哪裏?我無法在sln或vcproj中找到它。或者有沒有辦法將斷點轉換爲跟蹤點?我發現我可以通過改變「When Hit」屬性對話框來手動改變它。
謝謝!
你的意思是性能或內存分析器?我也想過使用代碼覆蓋檢查器。但我也需要知道函數參數/變量的值。我認爲探查器無法記錄這些信息嗎?我還需要知道函數調用的順序 - 哪個函數首先被調用。使用tracepoint,我能夠知道這些。 – Darren 2009-04-27 01:36:43
我目前使用的性能分析器(來自EQUATEC)允許我按照它們被調用的順序深入到特定的方法。至於查看傳遞給每個方法的參數,我不確定。我沒有真的需要這樣的事情。抱歉,我無法提供更多幫助。 – 2009-04-27 01:55:17