为何Outlook 2019不支持Mailbox要求集1.6的加载项?
Outlook加载项清单要求集1.6不支持Outlook 2019的原因分析
核心原因解析
1. Outlook 2019版本的要求集支持上限差异
- 批量许可版(Perpetual):Outlook 2019批量许可版属于永久授权版本,产品本身最高仅支持Mailbox要求集1.5,无法兼容1.6及以上版本的特性,这是版本固有的限制。
- 零售版:虽然官方标注零售版支持1.6,但需要安装2020年及以后的累积更新包。如果测试环境未安装这些更新,客户端依然无法识别1.6要求集的加载项。
2. 清单架构版本的兼容性问题
你的清单使用的是http://schemas.microsoft.com/office/appforoffice/1.1架构版本,这个较早的架构对高版本要求集的声明兼容性识别存在局限。验证器会基于架构版本判断要求集的支持范围,旧架构下声明1.6要求集,会被默认排除Outlook 2019所有版本。
3. 验证器的判断逻辑
验证器严格遵循官方要求集支持矩阵校验,当清单架构版本较低且声明了1.6要求集时,会直接判定Outlook 2019全版本不兼容,即使零售版理论上有支持可能。
解决方案建议
- 如果需要覆盖所有Outlook 2019版本,保持Mailbox要求集为1.5即可,这是最稳妥的选择。
- 若必须使用1.6的特性,仅针对Outlook 365和已更新到最新版本的Outlook 2019零售版,需将清单的
OfficeAppxmlns升级到http://schemas.microsoft.com/office/appforoffice/1.2或更高版本,同时确保测试环境的零售版Outlook 2019已安装支持1.6的累积更新。
原始清单代码
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0" xmlns:mailappor="http://schemas.microsoft.com/office/mailappversionoverrides/1.0" xsi:type="MailApp"> <Id>5cab1898-a3f0-4d55-9613-70e646caa635</Id> <Version>1.0.0.0</Version> <ProviderName>Contoso</ProviderName> <DefaultLocale>en-US</DefaultLocale> <DisplayName DefaultValue="dummy1"/> <Description DefaultValue="A template to get started."/> <IconUrl DefaultValue="https://localhost:3000/assets/icon-64.png"/> <HighResolutionIconUrl DefaultValue="https://localhost:3000/assets/icon-128.png"/> <SupportUrl DefaultValue="https://www.contoso.com/help"/> <AppDomains> <AppDomain>https://www.contoso.com</AppDomain> </AppDomains> <Hosts> <Host Name="Mailbox"/> </Hosts> <Requirements> <Sets> <Set Name="Mailbox" MinVersion="1.6"/> </Sets> </Requirements> <FormSettings> <Form xsi:type="ItemRead"> <DesktopSettings> <SourceLocation DefaultValue="https://localhost:3000/taskpane.html"/> <RequestedHeight>250</RequestedHeight> </DesktopSettings> </Form> </FormSettings> <Permissions>ReadWriteItem</Permissions> <Rule xsi:type="RuleCollection" Mode="Or"> <Rule xsi:type="ItemIs" ItemType="Message" FormType="Read"/> </Rule> </OfficeApp>
内容的提问来源于stack exchange,提问作者Nick McKenna
相关产品推荐
相关产品推荐

