Visual Studio 2008中的工具栏开发

时间:2013-09-23 12:25:54

标签: c# visual-studio-2010

最近我为visual studio开发了2个插件。我已将它们放在ToolBar中。

当我点击visual studio中工具栏中的插件时,插件工作正常。 再次当我点击插件再次使用它时,它不起作用。为了使其工作,我需要关闭视觉工作室。那么如何在不关闭视觉工作室的情况下使插件工作?

我在做这件事时所做的一些观察......

当我使用Addins时,插件管理器(我们默认加载插件的位置)会自动检查。因此,如果我取消选中它,我可以在不关闭visual studio的情况下重复使用插件。

但是,如果我这样做,它将成为手动操作,并且无法提供插入工具栏中插件的目的。

那么,有没有办法自动取消选中Addin Manager中的插件,当我在Visual Studio中运行插件时会对其进行检查?

2 个答案:

答案 0 :(得分:0)

我认为当add in抛出未处理的异常时会发生这种情况。它可以无声地失败,然后需要重新加载加载项。

答案 1 :(得分:0)

找到了这个问题的答案

在每个visual Studio外接程序项目中都有5套方法。即OnConnect,OnDisconnection,OnAddInsUpdate,OnStartupComplete,OnBeginShutdown,Exec和queryStatus。如果Visual Studio插件逻辑是用Exec方法编写的,那么这个问题将是之前问题的原因是因为加载项逻辑是用OnConnect方法编写的.OnConnect方法只用于执行一些默认操作,比如在工具栏中添加加载项名称,注册时必须执行一次。所以写入的逻辑是只要在工具栏中按下加载项按钮,就会一次又一次地执行Exec,每次使用加载项。