Tag: visual studio addins

我的vs2008插件用于textformatting非常慢

我写了一个小插件,它对我的​​C#代码进行了一些格式化。 在addins Exec方法中,我执行以下操作 try { TextSelection selection = (EnvDTE.TextSelection)_applicationObject.ActiveDocument.Selection; String foo = String.Empty; if (!text.IsEmpty) { foo = someCoolObjectThatFormatsText.Format(selection.Text); selection.Text = foo; // here everything gets painfully slow 🙁 } } catch (Exception) { throw; } 当代码行为“SelectedText.Text = foobar”时 是调用,VS逐步重建选择的每一行。 您可以轻松地观察它执行此步骤。 但我不明白,为什么这么慢。 任何提示? TIA

如何在Visual Studio加载项中获取中断/exception的当前行号?

我正在搞乱Visual Studio加载项API,试图看看我想做的事情是否可行。 我现在正在做的一件事是: public void Exec(string commandName, vsCommandExecOption executeOption, ref object varIn, ref object varOut, ref bool handled) { _applicationObject.Events.DebuggerEvents.OnExceptionThrown += DebuggerEvents_OnExceptionThrown; handled = false; if(executeOption == vsCommandExecOption.vsCommandExecOptionDoDefault) { if(commandName == “MyAddin1.Connect.MyAddin1”) { handled = true; return; } } } void DebuggerEvents_OnExceptionThrown(string ExceptionType, string Name, int Code, string Description, ref dbgExceptionAction ExceptionAction) { //how to […]

创建“自定义设计器”Visual Studio 2010加载项

我们工作的一个主要部分是创建和操作某些XML文件,其中有一个自定义编辑器。 编辑开始变得吱吱作响,我们正在寻找建立替代品。 由于VS2010最近已经到来,表面上是一个改进的插件架构(MEF?),我感兴趣的是可以在Visual Studio中将编辑器构建为自定义编辑器 。 它必须以与代码编辑器或Designer相同的方式出现 – 一个标签项,其中可以有多个一次打开,包含我们用来编辑文件的GUI。 它将与VS的编辑菜单集成 。 它可以使用输出窗口来显示消息 。 它看起来与Visual Studio中的任何其他编辑器相同 。 现在,我正在寻找以类似方式工作的加载项示例 – 理想情况下使用源代码 – 以查看此模型是否符合我们的要求。 我也在寻找与创建VS2010加载项相关的任何文档或教程 ,或者有关VS2008加载项的信息,如果这仍然相关的话。 欢迎任何输入。 谢谢!

Outlook插件:从选定的日历中获取元素

我正在创建一个Outlook加载项,我想知道如何从选定的日历中获取元素? 例如,我需要从名为“myCalendar”的日历中获取所有约会项目。 现在,我可以从所有日历中获取所有约会项目。 谢谢,

Visual Studio拦截F1帮助命令

我正在寻找一个可视化工作室插件,它可以拦截默认的在线帮助命令,并在类或类型上调用F1帮助时获取MSDN库URL。 例如,假设我将光标放在关键字字符串上并按F1,它通常会自动打开浏览器并导航到字符串引用类型的帮助文档。 我想抓住在浏览器到达浏览器之前传递给浏览器的URL。 是否可以编写一个可以拦截默认F1帮助命令的visual studio插件/扩展? 如果以上可以做任何指针,从哪里开始?

DTE2事件不会触发

在尝试开发我的第一个VS Addin时,我遇到了解雇DTE2事件的问题。 基本上,DocumentOpened和LineChanged事件由于某种原因不会触发。 我错过了什么重要的部分? namespace TestAddin { public class Connect : IDTExtensibility2 { private AddIn _addInInstance; private DTE2 _applicationObject; public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom) { _applicationObject = (DTE2) application; _addInInstance = (AddIn) addInInst; _applicationObject.Events.DocumentEvents.DocumentOpened += InitializeFoldingOnDocument; _applicationObject.Events.TextEditorEvents.LineChanged += UpdateFoldingOnDocument; } private void UpdateFoldingOnDocument(TextPoint startpoint, TextPoint endpoint, int hint) { […]

如何在VS包项目中获取DTE对象实例?

如何在VS包项目中获取DTE实例? 它在addin项目中很简单,因为application作为onConnection方法的参数传递,但目前还不清楚如何在包中获取它。

Visual Studio加载项 – 向解决方案资源管理器添加上下文菜单项

我正在为Visual Studio开发我的第一个加载项,我们需要向解决方案资源管理器添加一个上下文菜单项,它只显示特定的文件类型(在我们的例子中是“.resx”)。 我已经谷歌搜索了2天,无法找到任何教程或代码示例…只有非常基本的东西,如添加菜单项到VS“工具”菜单等。

是否有Visual Studio 2012 / VS11的自定义语言加载项?

好吧,我想在Visual Studio 2012中添加对PAWN语言的支持。 但由于缺乏经验和缺乏可编辑的教程/插件,这真的是一项艰巨的任务。 现在我只想添加文件类型和编译器,不需要intellisense,并且语法高亮可以使用C语法高亮显示器。 我知道有OOK语言实现和Boo语言,但这些加载项适用于VS2010,不会为VS2012编译。 我怎么做到这一点? 是否有语言加载项(对于VS2012)我可以编辑/使用作为基础/用作示例? 我的最后一次尝试导致黑色窗口/无法使用的VS2012 IDE。