共享的插件(当前为Outlook)-工具栏按钮可以工作一点,然后停止,没有错误提示

| 这有点奇怪:我有一个共享的Office插件,当前针对XP和Win7(Excel / Word及更高版本)上的Outlook 2007。它添加了一个工具栏按钮,这会触发我的代码。我的代码只是从Outlook读取数据。第一次,它可以治疗。第二次,单击按钮不会执行任何操作。没有错误,没事。 Outlook的其余部分正常响应。 整个事件代码在try / catch中,该代码将任何异常写出到临时文件中(如果在代码中引发异常,则该机制有效),但是什么也没捡到。 根据\“信任中心\”,我的插件处于活动状态(不是非活动状态或已禁用)。如果我重新启动Outlook,或通过“信任中心”停止并启动外接程序,则它将再次运行一次,然后停止。 如果减少代码的工作量,该按钮有时会响应大约十次单击,然后放弃。无论我尝试使用哪种版本的代码,资源似乎都不会发生太大变化(内存上升了,线程数保持不变)。 我已经读过Word的类似内容,但这是因为Word每次加载文档时都会重新创建工具栏或菜单(不确定这样做的正确性)。对我来说,我选择一封电子邮件,单击一次,它会起作用,然后再次单击(在Outlook中不会更改视图,选择其他电子邮件等),但不会。 有人在这里有任何线索吗?     
已邀请:
您应该将包含工具栏按钮的变量放在全局范围内(您可以将其保留为外接对象的字段)。如果您一直没有保持有效的路径,.NET垃圾收集器最终将使用它们清理这些对象和事件处理程序。但是,这不会删除可见按钮,因此它仍然是可见的。     

要回复问题请先登录注册