首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >导致Outlook 365永久禁用自定义VSTO COM加载项的常见代码气味是什么?

导致Outlook 365永久禁用自定义VSTO COM加载项的常见代码气味是什么?
EN

Stack Overflow用户
提问于 2021-07-05 23:06:44
回答 1查看 45关注 0票数 0

我目前正在维护一个公司内部的插件,它只接受一封邮件,包装为附件,并将其发送到我们的内部邮件地址作为垃圾邮件报告。

插件总是有这个问题,似乎没有任何原因(-此外:“插件已导致outlook崩溃-因此它已被永久禁用”,当检查插件状态时) Outlook不喜欢它,并永久禁用它,没有重新启用的选项。

这已经是Outlook 2016的一个问题,当时可以通过设置几个注册表项来解决。我的任务是为Outlook365构建一个版本。Outlook365在这方面似乎要明智得多。

我添加了一个函数,用于设置以下键:

代码语言:javascript
复制
[HKEY_CURRENT_USER\Software\Microsoft\Office\Outlook\Addins\SpamReporter]
"LoadBehavior"=dword:00000003

[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Resiliency\DoNotDisableAddinList]
"SpamReporter"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Addins\SpamReporter]
"LoadBehavior"=dword:00000003

以下密钥也通过公司政策推出:

代码语言:javascript
复制
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\16.0\outlook\resiliency\addinlist]
"SpamReporter"="1"

更进一步说。程序集在Visual Studio中使用Comodo证书进行签名,我还尝试再次对安装程序本身进行签名。

但所有这些努力似乎都没有起到作用。我想我已经有了一个我们可以推出的工作版本,但得到了我们的推出人员的响应,当他快速测试它时,插件没有显示出来。

这种行为真的很令人沮丧,关于Office 365 VSTO COM加载项故障排除的文档似乎真的很少。

我花了大量的时间来解决这个问题。

EN

回答 1

Stack Overflow用户

发布于 2021-07-06 02:29:18

很可能你的插件加载时间太长(假设它在启动时不会崩溃)。请注意,您会因为使用.Net而受到惩罚-在运行插件中的一行代码之前,需要加载特定版本的整个.Net运行时。曾经有一个预热注册表键,可以告诉Outlook你使用的是哪个版本的.Net运行时,所以它会预先加载它,但它不再受支持。

当您转到文件|选项|加载项| COM加载项时,Outlook本身会显示什么?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68258344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档