2013-04-17 37 views
0

我想更好地理解PresentationTraceSources。 Refresh()方法的文檔說「通過強制重新讀取app.config文件刷新跟蹤源。」它期望在哪裏找到app.config文件?如果我將一個應用程序配置文件添加到我的項目中,它將被放置在項目源文件夾中,但是當部署應用程序時,不存在這樣的文件夾。如果Refresh()無法找到app.config,它會執行什麼操作?如果我在代碼中配置PresentationTraceSources,則不一定存在app.config文件。但是PresentationTraceSources.Refresh()調用仍然是必需的。在這種情況下究竟發生了什麼?PresentationTraceSources.Refresh在哪裏查找app.config文件?

回答

0

是的,你可以使用Systems.Diagnostics聽衆沒有一個配置文件。例如,在按鈕後面的事件處理程序中,創建一個偵聽器,然後將該偵聽器註冊到各個源。

預期的方案是使用配置文件,假定機器管理員與用戶分開將收集跟蹤,並且需要這樣做而無需重新編譯,並且需要關閉跟蹤而無需重新編譯。這將通過在應用程序配置文件配置監聽器,名字類似XamlPad.exe.config

做它看起來像你需要設置一個註冊表項,你需要有充分的信任。

http://msdn.microsoft.com/en-us/library/system.diagnostics.presentationtracesources.aspx

我想象,這個痕跡是由MS開發人員編寫的,以幫助你找出自己的代碼做什麼。 System.Net和WCF堆棧都使用System.Diagnostics跟蹤很多 - 一旦知道跟蹤源名稱,就可以連接偵聽器並「滾動查看矩陣」。

你可以寫任何痕跡源,但你可能會想創建自己的跟蹤源,它們很容易創建。

+0

WPF跡線可以通過設置在註冊表中的標誌從代碼被啓用,或者通過調用'PresentationTraceSources.Refresh()'。看到這個MSDN [博客](http://blogs.msdn.com/b/mikehillberg/archive/2006/09/14/wpftracesources.aspx) – bouvierr

相關問題