问题标签 [vs-extensibility]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vs-extensibility - Visual Studio - 我可以通过命令行导出模板吗?
是否可以从任何地方的命令行使用“导出模板”功能?我检查了 MSBuild.exe 和 devenv.exe 的命令行参数,没有看到任何明显的东西。
visual-studio-addins - 加载项和宏有什么区别?
他们有什么区别?你能用一个做什么而不能用另一个做什么?
visual-studio-2008 - 如何将文件夹添加到数据库项目?
我正在尝试将文件夹添加到 Visual Studio 2008 中的数据库项目。我发现数据库项目没有实现完整的 EnvDTE.Project 接口。特别是 ProjectItems 属性没有实现,所以我不能这样做:
有谁知道解决方法?是否有其他 API 可用于扩展 Visual Studio?
visual-studio - 我可以使用 Visual Studio 项目模板创建一个新文件夹吗
我已成功创建(并手动编辑)一个项目模板,该模板将在一次“镜头”中添加多个文件。我希望这些文件都创建在应该同时创建的文件夹下。
在项目模板 .vstemplate 文件中,我可以指定一个文件夹元素,但架构不允许在项目模板中使用一个。
知道这是否可能,还是我也必须开始考虑扩展 IDE?
c# - VSX:自定义包的项目类型模仿“调试 >> 启动操作 >> 启动外部程序”
我有一个基于 VSX 包 (2008+) 中的 C# 类库项目类型的自定义项目类型。对于这种项目类型,即使输出是一个类库,我也希望能够通过按 F5 (等)来调试这个应用程序。我有一个预构建的可执行文件,它将程序集路径作为命令行参数并将其加载以进行工作台测试。
我可以通过在属性页中使用项目的“调试 >> 启动操作 >> 启动外部程序”手动模拟此行为,方法是提供可执行文件的路径并将输出 dll 的相对路径作为命令行参数提供。但是这个设置太多了。我希望项目类型的包代码能够自动获取活动配置的程序集和工作台可执行文件的安装位置。
最坏的情况是,在每次成功构建后,该项目的属性页都会以编程方式更新为正确的值。我不是特别喜欢这个解决方案,因为它看起来很乱,似乎很容易失去同步并将这些潜在的错误暴露给用户。
我能想象的最好的解决方案涉及拦截 Start Debugger 事件(仅适用于此项目类型),然后它以“无法直接启动具有类库输出类型的项目”并改为执行工作台(附加调试器,课程)。我不知道 VSX 是否公开了必要的部分。
我愿意花钱让有经验的人编写这个简单的 (?) 包(以及一些其他要求,主要是项目级菜单项,已经部分实现),但我没有找到任何专门研究 VSX 包的顾问. 欢迎提出建议。
我采取了错误的方法吗?我假设我需要一个包而不是加载项。
visual-studio-2008 - Visual Studio 加载项项目中的 WPF 表单
我正在构建一个 Visual Studio 2008 加载项。该插件需要用户输入的 UI。我打算为那个 UI 使用 WPF。但我无法找到一种方法来让它发挥作用。有没有办法在 Visual-studio 插件项目中拥有 WPF 表单?
visual-studio-2008 - 处理 Visual Studio 2008 的调试器事件
我为 Visual Studio 创建了一个 AddIn,它应该处理用户调试应用程序并引发未处理异常的情况。我使用应用程序对象的“Events”属性注册了“OnExeceptionNotHandled”和“OnExceptionThrown”事件。在文档中可以读到这些事件在“OnEnterBreakMode”之前被触发。但是当我调试一个抛出“ArgumentException”的简单应用程序时,事件不会被触发。这是我的代码(缩短):
c# - 以编程方式从插件获取当前的 Visual Studio IDE 解决方案目录
我有一些对 .NET 解决方案执行更新的工具,但他们需要知道解决方案所在的目录。
我将这些工具添加为外部工具,它们出现在 IDE 工具菜单中,并$(SolutionDir)
作为参数提供。这工作正常。
但是,我希望通过自定义顶级菜单(为此我创建了一个 Visual Studio 集成包项目)和解决方案节点上的上下文菜单(为此我创建了一个 Visual Studio 插件项目)。我正在寻找一种通过这些上下文获取当前解决方案目录的方法。
我尝试从VisualStudio.DTE
对象中获取解决方案信息:
但是,这将返回加载项的解决方案目录,而不是当前解决方案。
我尝试回显$(SolutionDir)
并读回它:
但是,这返回了 IDE 的目录,而不是当前的解决方案。
我在解决方案节点中没有看到任何相关信息CommandBar
。
或者,如果有一种方法可以以编程方式访问已定义的 Visual Studio 外部工具并启动它们(使用已定义的宏参数),那将起作用。
解决办法是什么?
c# - Visual Studio 包 - 如何获取本地窗口中的信息?
我有一个 VSPackage,我想在调试模式下获取类似于本地窗口中显示的信息(当前上下文的变量值)。
我一直在试验 DTE.Debugger.CurrentStackFrame 实例,它看起来很有趣,因为它公开了 Argument 和 Local 表达式集合。但是,我看不到将表达式的值作为对象获取的方法- Value 属性似乎只是 ToString 值。