共用方式為


使用活動記錄

VSPackage 可以將訊息寫入活動記錄。 這項功能特別適用於對零售環境中的 VSPackage 進行偵錯。

提示

活動記錄一律保持開啟。 Visual Studio 會保留最後 100 個項目以及前 10 個項目的捲動緩衝區,其中包含一般組態資訊。

如何將項目寫入活動記錄

  1. 將此程式碼插入 [初始化] 方法中或插入 VSPackage 建構函式以外的任何其他方法中:

    IVsActivityLog log = GetService(typeof(SVsActivityLog)) as IVsActivityLog;
    if (log == null) return;
    
    int hr = log.LogEntry((UInt32)__ACTIVITYLOG_ENTRYTYPE.ALE_INFORMATION,
        this.ToString(),
        string.Format(CultureInfo.CurrentCulture,
        "Called for: {0}", this.ToString()));
    

    此程式碼會取得 SVsActivityLog 服務,並將它轉換成 IVsActivityLog 介面。 LogEntry 會使用目前的文化內容,將說明項目寫入活動記錄中。

  2. 載入 VSPackage 時 (通常是叫用命令或開啟視窗時),文字會寫入活動記錄。

如何檢查活動記錄

  1. 使用 /Log 命令列參數執行 Visual Studio,以在工作階段期間將 ActivityLog.xml 寫入至硬碟。

  2. 關閉 Visual Studio 之後,請在 Visual Studio 資料的子資料夾中尋找活動記錄:

    *%AppData%\Microsoft\VisualStudio\{version}\ActivityLog.xml

  3. 使用任何文字編輯器開啟活動記錄。 以下是典型項目:

    Called for: Company.MyApp.MyAppPackage ...
    

針對編輯器擴充功能中的匯入/匯出問題進行疑難解答:存取 MEF 組合錯誤記錄檔

寫入以編輯器為基礎的擴充功能時,如果您嘗試匯入目前 VS 安裝中不存在的項目,或您不正確地撰寫匯入或匯出,您可能會遇到問題。 尋找並解決這些問題的主要方法是參考儲存在 %localappdata%\Microsoft\VisualStudio{version}\ComponentModelCache\Microsoft.VisualStudio.Default.errManaged Extensibility Framework (MEF) 組合錯誤記錄檔。 若要深入了解如何在擴充功能中使用 MEF,請參閱本文件

穩固程式設計

因為活動記錄是一種服務,因此 VSPackage 建構函式中無法使用活動記錄。

您應該在寫入活動記錄之前取得活動記錄。 請勿快取或儲存活動記錄以供日後使用。