VSTO Outlook 2013 Addin中使用功能区的奇怪行为

时间:2015-06-17 16:44:56

标签: c# vsto outlook-addin

我有一个用于Outlook 2013的VSTO插件。奇怪的是,当我做一些看似没有连接的事情时。我的按钮组从它所在的位置消失。是否有很长时间的正常工作。我添加了一个带状组发射器,它消失了。然后我回滚了挂起的更改,但它仍然没有。

首先,为什么我的功能区组总是消失,它被设置为Position:AfterOfficeId GroupMailDelete并且选项卡设置为TabReadMessage。直到现在,这一直对我有用。我查阅了Office 2013中办公室ID中的文件中的元素并且它们是正确的(正如我所说,它已经好几个月了。)

第二,为什么在我回滚更改时不再出现?我只更改了那个文件,当我回滚时,看起来就像我触摸它之前那样。

在我做出改变之前,它一直正常工作。经过测试,工作,再次测试我的色带组已经消失。

我真的无法忍受这个问题,因为它弄乱了我的整个插件。有人请提供帮助,因为没有其他SO答案或我发现的任何其他帮助。

非常感谢

编辑:

重写程序复制逻辑并重新设计功能区中的功能区和表单。注册事件处理程序是一个痛苦,因为构建两个表单,一个来自EF,另一个使用原始sql。但除此之外,它现在有效。当我重写它时为什么它会工作,但当我回滚突破性变化时仍然无法工作?更不用说同样的改变并没有打破我重写的副本。

2 个答案:

答案 0 :(得分:1)

在功能区消失后,您是否检查了正在运行的COM加载项列表?您的加载项是否在列表中列为活动加载项?

Microsoft Office应用程序可以禁用意外行为的加载项。如果应用程序未加载加载项,则应用程序可能已禁用硬件或软件禁用加载项。

当加载项导致应用程序意外关闭时,可能会发生硬禁用。如果在加载项中的启动事件处理程序正在执行时停止调试器,也可能在开发计算机上发生。

当加载项产生不会导致应用程序意外关闭的错误时,可能会发生软禁用。例如,如果在启动事件处理程序执行时抛出未处理的异常,应用程序可能会软禁用加载项。

重新启用软禁用加载项时,应用程序会立即尝试加载加载项。如果最初导致应用程序软件禁用加载项的问题尚未修复,则应用程序将再次软禁用加载项。请在How to: Re-enable an Add-in That Has Been Disabled文章中详细了解相关内容。

你有任何UI错误吗?

有关详细信息,请参阅How to: Show Add-in User Interface Errors

最后,您使用哪种功能区XML?你能更具体一点吗?

答案 1 :(得分:1)

对于将来研究此问题的人,请尝试使用此链接 - 这对我来说非常有用:https://msdn.microsoft.com/en-us/library/ms268871(v=vs.140).aspx