如果你有现有的 COM 加载项或 VSTO 加载项,则可以在 Office 外接程序中生成等效的功能,从而使解决方案能够在其他平台(如 Office web 版 或 Mac)上运行。 在某些情况下,Office 外接程序可能无法提供相应的 COM 或 VSTO 外接程序中提供的所有功能。 在这些情况下,COM 或 VSTO 加载项在 Windows 上提供的用户体验可能比相应的 Office 加载项提供更好的体验。
注意
由于 COM 和 VSTO 加载项只能在 Windows 上安装,本文将 COM 和 VSTO 加载项统称为“仅限 Windows”加载项。
重要
新的 Outlook on Windows 不支持 COM 和 VSTO 加载项。 经典 Outlook on Windows 桌面客户端仍支持这些加载项。 若要了解详细信息,请参阅 为 Windows 上的新 Outlook 开发 Outlook 加载项。
你可以配置 Office 加载项,以便在用户的计算机上安装了等效的仅限 Windows 的加载项时,Windows 上的 Office 将运行仅限 Windows 的加载项,而不是 Office 加载项。 仅限 Windows 的加载项称为“等效”,因为 Office 将在仅限 Windows 的外接程序和 Office 加载项之间无缝转换,根据该加载项安装在用户的计算机上。
重要
以下平台和应用程序支持等效的外接程序功能。 COM、VSTO 和 XLL 加载项不能安装在任何其他平台上,因此在这些平台上,将忽略本文稍后讨论的清单标记。
指定等效的仅限 Windows 的加载项
获取仅限 Windows 的加载项的 ID
在指定等效的仅限 Windows 的外接程序之前,必须先通过以下步骤标识其名称:
- 在安装了仅 Windows 加载项的任何计算机上打开 Windows 注册表编辑器。
- 转到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\<Office application>\Addins 或 HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\<Office application>\Addins,其中 <Office 应用程序>为 Excel、Outlook、PowerPoint 或 Word。 例如, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Excel\Addins。
- 复制与所需的仅限 Windows 的加载项关联的注册表项的名称。 请注意,名称区分大小写。
配置清单
重要
适用于 Excel、Outlook、PowerPoint 和 Word。
若要启用 Office 加载项与仅限 Windows 的加载项之间的兼容性,请使用在获取仅限 Windows 加载项的 ID 部分中获取的名称,在 Office 外接程序 清单 中标识等效 的仅限 Windows 的加载项。 然后,Windows 上的 Office 将使用仅限 Windows 的加载项,而不是 Office 加载项(如果两者都已安装)。 配置取决于正在使用的清单类型。
以下示例演示清单的一部分,该部分将仅限 Windows 的外接程序指定为等效的外接程序。 属性的值 "alternates.prefer.comAddin.progId"
标识仅限 Windows 的加载项。
注意
尽管 属性称为“comAddin”,但它实际上指的是任何仅限 Windows 的加载项,而不管加载项是 COM 还是 VSTO。 同样,术语“progId”通常仅与 COM 加载项相关联,但在清单中,它指的是仅 Windows 加载项的名称。
"extensions" [
...
"alternates" [
{
"prefer": {
"comAddin": {
"progId": "ContosoAddin"
}
}
}
]
]
提示
- 有关 XLL UDF 与包含自定义函数的 Excel 加载项兼容性的信息,请参阅 使自定义函数与 XLL 用户定义函数兼容。
- 仅对于 Outlook,计算机的管理员可以使用 组策略指定等效的仅限 Windows 的加载项。 有关指导,请参阅为 Outlook 加载项配置组策略设置。
为 Outlook 加载项配置组策略设置
在计算机上具有管理员权限的用户可以使用在计算机上安装其等效 COM 或 VSTO 加载项的停用 Outlook Web 加载项组策略设置,将仅 Windows 加载项配置为与 Outlook 加载项等效。 即使 Outlook 外接程序的清单没有等效的外接程序标记,也可以实现此目的。 然后,经典 Outlook on Windows 使用仅限 Windows 的加载项,而不是 Outlook 加载项(如果两者都已安装)。 下面是配置策略的步骤。
下载最新的 管理模板工具,并注意该工具的 安装说明。
打开“本地组策略编辑器”(gpedit.msc)。
导航到“用户配置>管理模板>”Microsoft“>Outlook 2016 Miscellaneous”。
选择设置 停用安装了等效 COM 或 VSTO 加载项的 Outlook Web 外接程序。
打开链接以编辑策略设置。
在要 停用的 Outlook Web 加载项对话框中:
- 将 “值名称 ”设置为 Outlook 外接程序清单的 ID。 在仅外接程序清单中,使用 元素的值
<ID>
。 在统一清单中,使用清单根id
目录中的 属性的值。 不要在条目周围添加大括号{}
。 - 将 “值 ”设置为等效的仅限 Windows 的加载项的名称。 请参阅 获取仅限 Windows 的加载项的 ID 部分。
- 选择 “确定” ,使更新生效。
- 将 “值名称 ”设置为 Outlook 外接程序清单的 ID。 在仅外接程序清单中,使用 元素的值
用户的等效行为
指定等效的仅限 Windows 的加载项后,如果安装了等效的仅限 Windows 的加载项,则 Windows 上的 Office 将不会显示 Office 外接程序的用户界面 (UI) 。 但 Office 仅隐藏 Office 外接程序的功能区按钮,不会阻止安装。 因此,Office 加载项仍会显示在 UI 中的以下位置。
- 在 “我的加载项”下。
- 作为功能区管理器 (Excel 的条目,Word和 PowerPoint 仅) 。
注意
在清单中指定等效的仅限 Windows 的加载项对其他平台(如 Office web 版 或 Mac)没有任何影响。
以下方案描述了根据用户获取 Office 加载项的方式会发生什么情况。
AppSource 获取 Office 加载项
如果用户从 AppSource 获取 Office 加载项,并且已安装等效的仅限 Windows 的加载项,则 Office 将:
- 安装 Office 加载项。
- 隐藏功能区上的 Office 外接程序 UI。
- 为指出仅限 Windows 的加载项功能区按钮的用户显示标注。
Office 加载项的集中部署
如果管理员使用集中部署将 Office 加载项部署到其租户,并且已安装等效的仅限 Windows 的加载项,则用户必须先重启 Office,然后才能看到任何更改。 Office 重启后,它将:
- 安装 Office 加载项。
- 隐藏功能区上的 Office 外接程序 UI。
- 为指出仅限 Windows 的加载项功能区按钮的用户显示标注。
与嵌入式 Office 加载项共享的文档
如果用户安装了仅限 Windows 的加载项,然后获取包含嵌入式 Office 外接程序的共享文档,则当他们打开文档时,Office 将:
- 提示用户信任 Office 加载项。
- 如果受信任,将安装 Office 加载项。
- 隐藏功能区上的 Office 外接程序 UI。
其他仅限 Windows 的加载项行为
Excel、PowerPoint、Word
如果用户卸载等效的仅限 Windows 的加载项,则 Windows 上的 Office 将还原 Office 外接程序 UI。
为 Office 外接程序指定等效的仅限 Windows 的加载项后,Office 将停止处理 Office 外接程序的更新。 若要获取 Office 外接程序的最新更新,用户必须先卸载仅限 Windows 的加载项。
Outlook
在 Outlook 启动时,必须连接仅限 Windows 的加载项,才能禁用相应的 Outlook 加载项。
如果仅 Windows 加载项在后续 Outlook 会话期间断开连接,Outlook 加载项可能会一直处于禁用状态,直到重新启动 Outlook。