Visual Studio 2008 中的工具栏开发

本文关键字:工具栏 开发 Studio 2008 Visual | 更新日期: 2023-09-27 18:32:36

最近我为Visual Studio开发了2个插件。我已经将它们放在工具栏中。

当我在视觉工作室的工具栏中单击插件时,插件工作正常。再次,当我单击插件再次使用它时,它 Work.In 无法使其工作,我需要关闭视觉工作室。那么如何在不关闭视觉工作室的情况下使插件工作呢?

我在研究这个问题时提出的一些观察结果......

当我使用插件时,插件管理器(默认情况下我们加载插件的地方)会自动检查。因此,如果我取消选中它,我可以在不关闭视觉工作室的情况下重复使用该插件。

但是如果我这样做,它就会变成手动操作,并且将无法实现将插件插入工具栏的目的。

那么,有没有办法自动取消选中加载项管理器中的加载项,当我在 Visual Studio 中运行加载项时会选中该加载项?

Visual Studio 2008 中的工具栏开发

我认为当加载项抛出未处理的异常时,可能会发生这种情况。 它可能会以静默方式失败,然后需要重新加载加载项。

已经找到了这个问题的答案

在每个 Visual Studio 外接程序项目中,有 5 组方法。即OnConnect,OnDisconnection,OnAddInsUpdate,OnStartupComplete,OnBeginShutdown,Exec和queryStatus。如果Visual Studio addin逻辑是用Exec方法编写的,那么这个问题就会得到解决。以前,该问题是由于加载项逻辑是用 OnConnect 方法编写的。OnConnect方法仅用于执行一些默认操作,例如将加载项名称添加到工具栏,这必须在注册时完成一次。虽然用 Exec 编写的逻辑是一次又一次地完成的,但每次使用加载项时,只要在工具栏中按下加载项按钮。