我有一个用于Outlook 2013的VSTO插件。奇怪的是,当我做一些看似没有连接的事情时。我的按钮组从它所在的位置消失。是否有很长时间的正常工作。我添加了一个带状组发射器,它消失了。然后我回滚了挂起的更改,但它仍然没有。
首先,为什么我的功能区组总是消失,它被设置为Position:AfterOfficeId GroupMailDelete并且选项卡设置为TabReadMessage。直到现在,这一直对我有用。我查阅了Office 2013中办公室ID中的文件中的元素并且它们是正确的(正如我所说,它已经好几个月了。)
第二,为什么在我回滚更改时不再出现?我只更改了那个文件,当我回滚时,看起来就像我触摸它之前那样。
在我做出改变之前,它一直正常工作。经过测试,工作,再次测试我的色带组已经消失。
我真的无法忍受这个问题,因为它弄乱了我的整个插件。有人请提供帮助,因为没有其他SO答案或我发现的任何其他帮助。
非常感谢
编辑:
重写程序复制逻辑并重新设计功能区中的功能区和表单。注册事件处理程序是一个痛苦,因为构建两个表单,一个来自EF,另一个使用原始sql。但除此之外,它现在有效。当我重写它时为什么它会工作,但当我回滚突破性变化时仍然无法工作?更不用说同样的改变并没有打破我重写的副本。
答案 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