用户打开Visual Studio IDE后,是否可以为后台运行的Visual Studio创建扩展程序?例如,我正在构建一个扩展,在Visual Studio中获取当前活动文件地址(使用C#),但我希望此扩展始终在后台运行,而无需用户单击按钮或按某个键激活组合
这是可能的,如果是这样,最好的方法是什么?
任何帮助将不胜感激!此致,Erfan
答案 0 :(得分:4)
由于您使用visual-studio-2010
标记了您的问题,我假设您正在使用"加载项"而不是" VSPackage Extensions"。
在这种情况下,您可以使用OnConnection
事件处理程序。
如果您正在使用VSPackage Extensions,则可以使用属性ProvideAutoLoad
。
只需搜索这些内容,您就会找到足够的信息。这两种方式也很快被描述为here under "How can I run my add-in code in a VSPackage?"
答案 1 :(得分:4)
对于VS 2010及更高版本,推荐的可扩展性方法是一个包(VS 2015赢得了允许加载项)。
要在加载Visual Studio时加载包,请参阅HOWTO: Autoload a Visual Studio package。
加载后,您的包可能会对两种不同类型的选择更改事件感兴趣:
答案 2 :(得分:3)
对于Extension,将以下属性添加到Package类,这将在Visual Studio中未打开解决方案时加载扩展。我已经用VS 2015和2017测试了这个。
[ProvideAutoLoad(UIContextGuids80.NoSolution)]