VSTO 載入宏的登錄專案

部署使用 Visual Studio 建立的 VSTO 增益集時,您必須建立一組特定的登錄項目。 這些登錄項目可提供讓 Microsoft Office 應用程式探索及載入 VSTO 增益集的資訊。

適用於: 本主題中的資訊適用於 VSTO 載入宏專案。 如需詳細資訊,請參閱 Office 應用程式 lication 和項目類型所提供的功能。

注意

有興趣開發跨多個平台擴充 Office 體驗的解決方案嗎? 查看新的 Office 載入宏模型。 相較於 VSTO 載入宏和解決方案,Office 載入宏的使用量很小,而且您可以使用幾乎任何 Web 程式設計技術來建置它們,例如 HTML5、JavaScript、CSS3 和 XML。

當您建置專案時,Visual Studio 會在開發計算機上建立這些登錄專案。 這可協助您輕鬆地執行 VSTO 載入宏並進行偵錯。 使用 ClickOnce 部署 VSTO 載入宏,系統會自動在用戶電腦上建立登錄專案。

如需如何使用 Windows Installer 部署 VSTO 解決方案的詳細資訊,請參閱 使用 Windows Installer 部署 VSTO 解決方案。

如需如何在 VSTO 增益集載入過程中使用登錄項目的詳細資訊,請參閱 Architecture of VSTO Add-ins

注意

在本主題中, 增益集 ID 一詞代表 VSTO 增益集的唯一識別碼。 根據預設,這個識別碼是 VSTO 增益集組件的名稱。

註冊目前使用者的 VSTO 載入宏與所有使用者

VSTO 增益集安裝完成後,可以使用兩種方法註冊:

  • 僅適用於目前的使用者(VSTO 載入宏僅適用於安裝載入宏時登入電腦的使用者。 在此情況下,登錄專案會在HKEY_CURRENT_USER建立。

  • 針對所有使用者(也就是任何登入計算機的使用者都可以使用 VSTO 載入宏)。 在此情況下,登錄專案會在 HKEY_LOCAL_MACHINE建立。

    以 Visual Studio 建立的所有 VSTO 增益集都能註冊以供目前的使用者使用。 不過,只有在特定情況下,才能註冊 VSTO 增益集讓所有使用者使用。 這些情況取決於電腦上的 Microsoft Office 版本以及 VSTO 增益集的部署方式。

部署類型

如果您使用 ClickOnce 部署 VSTO 增益集,VSTO 增益集只能註冊供目前使用者使用, 這是因為 ClickOnce 僅支援在 HKEY_CURRENT_USER建立金鑰。 如果希望讓電腦的所有使用者都能使用註冊的 VSTO 增益集,則必須使用 Windows Installer 部署 VSTO 增益集。 如需這些部署類型的詳細資訊,請參閱 使用 ClickOnce 部署 Office 解決方案和使用 Windows Installer 部署 Office 解決方案。

登錄項目

必要的 VSTO 載入宏登錄項目位於下列登錄機碼底下,其中 RootHKEY_CURRENT_USERHKEY_LOCAL_MACHINE ,視安裝是否為目前使用者或所有使用者而定。

Office 應用程式 組態路徑
Visio Root\Software\Microsoft\Visio\Addins\add-in ID
所有其他 Root\Software\Microsoft\Office\Office 應用程式 lication name\Addins\add-in ID

注意

如果安裝程式以 64 位 Windows 上的所有使用者為目標,建議您包含兩個登錄專案,一個位於 HKEY_LOCAL_MACHINE\Software\Microsoft 底下,另一個位於 HKEY_LOCAL_MACHINE\Software\WOW6432Node\Microsoft hive 之下。 這是因為使用者可以在計算機上使用 32 位或 64 位版本的 Office。

如果安裝程式是以目前用戶為目標,則不需要安裝到 WOW6432Node,因為共用HKEY_CURRENT_USER\Software 路徑。

如需詳細資訊,請參閱 登錄中的32位和64位應用程式資料。

下表列出此登錄機碼下的項目。

Entry 類型
說明 REG_SZ 必要。 VSTO 增益集的簡短描述。

當使用者在 Microsoft Office 應用程式之 [選項] 對話方塊的 [增益集] 窗格中選取 VSTO 增益集時,即會顯示這個描述。
FriendlyName REG_SZ 必要。 這是 Microsoft Office 應用程式的 [COM 增益集] 對話方塊中,所顯示之 VSTO 增益集的描述性名稱。 預設值為 VSTO 增益集 ID。
LoadBehavior REG_DWORD 必要。 可指定應用程式何時嘗試載入 VSTO 增益集和 VSTO 增益集目前狀態 (載入或卸載) 的值。

這個項目預設會設定為 3,指定在啟動時載入 VSTO 增益集。 如需詳細資訊,請參閱 LoadBehavior值

注意:如果使用者停用 VSTO 載入宏,該動作會修改HKEY_CURRENT_USER登錄區中的 LoadBehavior 值。 對於每個使用者,HKEY_CURRENT_USER hive 中 LoadBehavior 值的值會覆寫HKEY_LOCAL_MACHINE hive 中定義的預設 LoadBehavior
Manifest REG_SZ 必要。 VSTO 增益集部署資訊清單的完整路徑。 路徑可以是本機電腦上的位置、網路共用 (UNC) 或 Web 伺服器 (HTTP)。

如果使用 Windows Installer 來部署解決方案,您必須在 資訊清單 路徑前加上前置詞 file:/// 。 您也必須將字串 |vstolocal (也就是管道字元|後面接著 vstolocal) 附加至此路徑的結尾。 如此可以確保解決方案是從安裝資料夾載入,而不是從 ClickOnce 快取載入。 如需詳細資訊,請參閱 使用 Windows Installer 部署 Office 解決方案。

注意:當您在開發計算機上建置 VSTO 載入宏時,Visual Studio 會自動將 |vstolocal 字串附加至此登錄專案。

Outlook 窗體區域的登錄專案

如果您在 Outlook 的 VSTO 增益集中建立自訂表單區域,則必須使用額外的登錄項目向 Outlook 註冊這個表單區域。 系統會在表單區域所支援之各個訊息類別的不同登錄機碼下建立這些項目。 這些登錄機碼位於下列位置,其中 RootHKEY_CURRENT_USERHKEY_LOCAL_MACHINE

Root\Software\Microsoft\Office\Outlook\FormRegions\message 類別

當您建置專案時,Visual Studio 會在開發電腦上建立表單區域登錄項目,如同所有 VSTO 增益集共用的其他登錄項目一樣。 使用 ClickOnce 部署 VSTO 載入宏,系統會自動在用戶電腦上建立登錄專案。 當您使用 Windows Installer 部署 VSTO 載入宏時,您必須設定 InstallShield Limited Edition 專案,以在用戶電腦上建立登錄專案。

如需表單區域登錄專案的詳細資訊,請參閱 指定自定義表單中表單區域的位置。 如需 Outlook 窗體區域的詳細資訊,請參閱 建立 Outlook 窗體區域

LoadBehavior 值

Root\Software\Microsoft\Office\application name\Addins\addins\add-in ID 機碼下的 LoadBehavior 專案包含值的位元組合,指定 VSTO 載載宏的運行時間行為。 最低順序位元 (值 0 和 1) 表示 VSTO 增益集目前處於卸載或載入狀態。 其他位元則表示應用程式嘗試載入 VSTO 增益集的時間。

一般而言,當 VSTO 載入宏安裝在用戶電腦上時, LoadBehavior 專案會設定為 0、3 或 16(以十進位為單位)。 根據預設,當您建置或發行 VSTO 增益集時,Visual Studio 會將 VSTO 增益集的 LoadBehavior 項目設定為 3。

下表列出 LoadBehavior 項目所有可能的值: 這個表格中的部分描述是指手動或以程式設計方式載入 VSTO 增益集。 若要手動載入 VSTO 增益集,請在應用程式的 [COM 增益集] 對話方塊中,選取 [VSTO 增益集] 旁的核取方塊。 若要以程式設計方式載入 VSTO 增益集,請將代表 VSTO 增益集之 Connect 物件的 COMAddIn 屬性設定為 true

值 (十進位) VSTO 增益集狀態 VSTO 增益集載入行為 描述
0 已卸載 不要自動載入 應用程式永遠不會嘗試自動載入 VSTO 增益集。 使用者可以嘗試手動載入 VSTO 增益集,或是以程式設計方式載入 VSTO 增益集。

如果成功載入 VSTO 增益集, LoadBehavior 值會維持為 0,但 [COM 增益集] 對話方塊中的 VSTO 增益集狀態會更新,表示已載入 VSTO 增益集。
1 已載入 不要自動載入 應用程式永遠不會嘗試自動載入 VSTO 增益集。 使用者可以嘗試手動載入 VSTO 增益集,或是以程式設計方式載入 VSTO 增益集。

雖然 [COM 載入宏] 對話方塊指出 VSTO 載入宏會在應用程式啟動時載入,但 VSTO 載入宏在手動或以程式設計方式載入之前,不會載入 VSTO 載入宏。

如果應用程式成功載入 VSTO 增益集, LoadBehavior 值會變成 0,並在應用程式關閉後維持為 0。
2 已卸載 啟動時載入 應用程式不會嘗試自動載入 VSTO 載入宏。 使用者可以嘗試手動載入 VSTO 增益集,或是以程式設計方式載入 VSTO 增益集。

如果應用程式成功載入 VSTO 增益集, LoadBehavior 值會變成 3,並在應用程式關閉後維持為 3。
3 已載入 啟動時載入 應用程式在啟動時嘗試載入 VSTO 增益集。 如果您在 Visual Studio 中建置或發行 VSTO 增益集,這就是預設值。

如果應用程式成功載入 VSTO 增益集, LoadBehavior 值會維持為 3。 如果載入 VSTO 增益集時發生錯誤, LoadBehavior 值會變成 2,並在應用程式關閉後維持為 2。
8 已卸載 視需要載入 應用程式不會嘗試自動載入 VSTO 載入宏。 使用者可以嘗試手動載入 VSTO 增益集,或是以程式設計方式載入 VSTO 增益集。

如果應用程式成功載入 VSTO 增益集, LoadBehavior 值會變成 9。
9 已載入 視需要載入 只有在應用程式需要 VSTO 載入宏時才會載入。 例如,當用戶選取使用 VSTO 載入宏中功能的 UI 元素時(例如功能區中的自定義按鈕)。

如果應用程式成功載入 VSTO 增益集, LoadBehavior 值會維持為 9,但 [COM 增益集] 對話方塊中的 VSTO 增益集狀態會更新,表示目前已載入 VSTO 增益集。 如果載入 VSTO 增益集時發生錯誤, LoadBehavior 值會變成 8。
16 已載入 第一次載入,之後則視需求載入 如果您希望依需求載入 VSTO 增益集,請設定為這個值。 使用者首次執行應用程式時,應用程式會載入 VSTO 增益集。 下次使用者執行應用程式時,應用程式會載入 VSTO 載入宏所定義的任何 UI 元素。 不過,除非用戶選取與 VSTO 載入宏相關聯的 UI 元素,否則不會載入 VSTO 載入宏。

應用程式首次成功載入 VSTO 增益集時, LoadBehavior 值會在 VSTO 增益集載入時維持為 16。 應用程式關閉後, LoadBehavior 值會變成 9。