2011-06-28 166 views
1

我正在研究Enterprise Library 5.0的女士,並遇到應用程序日誌記錄塊的問題:示例應用程序「日誌記錄」(http://entlib.codeplex.com/releases/查看/ 46741#DownloadId = 140302)不寫入Windows事件日誌(日誌記錄類別 - 「常規」,主菜單功能「SimpleLogWriterWrite」。有一次,它創建了新的Windows事件日誌與給定的名稱,但另一次 - 沒有(另一個名字)有一段時間,寫郵件到exisitng日誌,其他時間 - 有沒有什麼問題日誌記錄應用程序塊 - 無法寫入Windows事件日誌

感謝

回答

1

在寫入事件之前,事件日誌和源名稱都必須在Windows中註冊。寫入事件可以由任何用戶帳戶完成,但創建事件日誌和源名稱需要管理員權限。

在生產應用程序中設置事件日誌記錄的最佳方式是在安裝期間創建事件日誌和源名稱,以便合法地要求管理員權限。最簡單的方法是:

  1. Installer Class組件添加到您的應用程序項目。
  2. 將一個EventLogInstaller組件添加到安裝程序組件的設計表面。這在默認情況下在工具箱中不可用,但您可以從工具箱右鍵單擊菜單輕鬆添加它。
  3. 設置EventLogInstaller組件的屬性以創建所需的事件日誌和源名稱。
  4. 將您的安裝項目配置爲調用自定義操作,然後將其指向您應用的安裝程序組件。您的具體做法取決於您的安裝技術。
  5. 將您的安裝項目配置爲在運行時請求UAC提升。您的具體做法取決於您的安裝技術。
3

當登錄到Windows事件日誌,事件源必須是?。在可以成功之前在操作系統中註冊用心記錄。通常,.NET框架會在您第一次使用它時自動創建事件源,但創建事件源需要管理員權限。您可以以管理員身份運行該應用一次,並獲得註冊或搜索MSDN以「註冊事件源」。

相關問題