支援保持啟用增益集
Office 2013 和更新版本中的程式提供增益集復原功能,這表示如果增益集執行速度緩慢,應用程式將會停用增益集。 不過,您可以重新啟用增益集,並防止其他 Office 程式自動停用增益集。
防止停用增益集
雖然增益集停用功能不會停用大部分的增益集,但您不希望一致地停用增益集。
以下是改善增益集效能的一些建議:
偏好使用原生 COM 增益集而不是 Managed 增益集,因為 Managed 增益集必須在 Outlook 啟動期間產生載入.NET Framework的額外負荷。
如果您有長時間執行的工作,例如對資料庫進行昂貴的連線,請將這些工作延遲為在啟動後發生。
可能的話,請在本機快取資料,而不是在檔案總管的 FolderSwitch 和 BeforeFolderSwitch 事件期間進行昂貴的網路呼叫,或 是開 啟專案的事件。
請注意,所有對 Outlook 物件模型的呼叫都會在 Outlook 的主要前景執行緒上執行。 盡可能避免長時間執行的 Outlook 物件模型呼叫。
在 Outlook 2013 中,從背景執行緒呼叫 Outlook 物件模型時,對 Outlook 物件模型的呼叫會傳回E_RPC_WRONG_THREAD。
輪詢是耗費資源的作業,因此一律偏好事件驅動模型,而不是輪詢。
注意事項
在下列情況下,您無法防止 Outlook 停用增益集:
增益集損毀 Outlook。
無法載入增益集。
在這些情況下,必須與增益集擁有者一起修正損毀或載入失敗的原因。
系統管理員對增益集的控制
使用者可以控制哪些增益集在其電腦上執行。 從 Office 2013 開始,系統管理員可以使用群組原則來設定增益集的增強控制層級。 群組原則一律會覆寫使用者設定,而且使用者無法變更群組原則 [受控增益集清單] 所設定加 載宏的載入宏設定。
針對 Outlook,下表說明登錄機碼和設定。
名稱 | 描述 |
---|---|
機碼 | Office 2013: HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\15.0\Outlook\Resiliency\AddinList Office 2016/2019/365: HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\16.0\Outlook\Resiliency\AddinList |
描述 | 此原則設定可讓您指定一律啟用、一律停用 (封鎖) 或使用者可設定的受控增益集清單。 注意:在這裡,「受控」一詞是指群組原則所處理的增益集,與以 Managed 程式設計語言開發的增益集無關。 |
字串 | 增益集的 ProgID |
值 | 指定值,如下所示: 0 = 一律停用 (封鎖) 1 = 一律啟用 2 = 可由使用者設定,且未在啟用時由 [封鎖所有 Unmanaged 載入 宏] 原則設定封鎖。 |
注意事項
若要取得增益集的 ProgID,請在安裝增益集的用戶端電腦上使用 Windows 登錄編輯器。 複製找到的登錄機碼名稱:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\< application > \Addins 或 HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\< application > \Addins。 登錄機碼名稱會 區分大小寫。
如果停用或未啟用此原則設定,則會刪除受控增益集清單。 如果已啟用 [封鎖所有非受控載入 宏] 原則設定,則會封鎖所有增益集。
Outlook 增益集停用功能永遠不會停用此原則所停用的增益集,因為基於效能、復原或可靠性原因而停用增益集。
如果使用者選擇 [一律啟用此增益集],就會更新登錄,以包含要豁免來自自動停用功能之增益集的詳細資料。
名稱 | 描述 |
---|---|
機碼 | HKEY_CURRENT_USER\Software\Microsoft\Office\x.0\Outlook\Resiliency\DoNotDisableAddinList |
描述 | 此金鑰可防止增益集停用功能停用您指定的增益集。 |
Dword | 增益集的 ProgID |
值 | 介於 1 和 A 之間的十六進位值,指出增益集最初停用的原因: 0x00000001開機載入 (LoadBehavior = 3) 0x00000002 LoadBehavior (需求載入 = 9) 0x00000003損毀 0x00000004處理 FolderSwitch 事件 0x00000005處理 BeforeFolderSwitch 事件 0x00000006專案開啟 0x00000007反覆運算計數 0x00000008關機 0x00000009當機,但未停用,因為增益集位於允許清單中 0x0000000A當機,但未停用,因為使用者在 [停用] 對話方塊中選取了 [否] 注意:x.0 預留位置代表 Office (16.0 = Office 2016/2019/365,15.0 = Office 2013) 的版本。 |
注意事項
如果您重新啟用一次造成效能問題的增益集,使用者未來可能會在載入增益集的 Office 程式中遇到效能問題。
若要封鎖不受此原則設定管理的增益集,您也必須設定 [封鎖所有未受管理的增益集] 原則設定。
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應