问题标签 [vspackage]

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.

0 投票
0 回答
48 浏览

vspackage - 如何从 VS 包启动“新建项目对话框”

我需要从我的 vspackage 中启动 Visual Studio 新项目对话框。而且我还找不到有关如何执行此操作的信息。所以我的问题是——如何?通常,这个问题不仅与“新项目对话框”有关,而且与任何 VS 对话框有关。
谢谢你的帮助

0 投票
1 回答
5497 浏览

c# - 如何使用 vs 包在解决方案资源管理器中获取所选项目的详细信息

我正在尝试创建一个 VS 包,其中我已将菜单命令添加到上下文菜单中,因此当您右键单击解决方案资源管理器中的某个项目时它会出现。现在单击命令时,我想显示一个包含项目详细信息的弹出窗口,您可以在其上单击鼠标右键并调用该命令。

现在我将如何获得有关所选项目的信息?我可以使用任何服务来获取有关该项目的任何详细信息吗?

0 投票
2 回答
1290 浏览

c# - 使用 vspackage 将上下文菜单项添加到解决方案资源管理器中的所有文件和文件夹

我想在解决方案资源管理器中的所有文件和文件夹的上下文菜单中添加一个菜单项。我能够使用 vsct 文件中的这个条目将我的菜单项添加到项目节点。

我想在解决方案资源管理器中所有文件和文件夹的上下文菜单中获取它。我应该使用的 id 是什么?有没有什么地方可以找到Visual Studio中所有菜单的ID?

0 投票
1 回答
211 浏览

visual-studio-2010 - 使用 Visual Studio 编辑器扩展点标记整行

我想根据我的 VSPackage 中的一些逻辑在编辑器上标记一整行。
所以我导出IClassifierProviderEditorFormatDefinition通过设置成功标记了相关BackgroundColorClassificationFormatDefinition

但是,问题在于该行没有“完全”标记,仅标记了文本和空格。当行首有制表符时,它们之间的标记是“间歇的”。此外,该标记不跨越行尾。

我希望标记从编辑器窗口的左边缘开始并延伸到编辑器窗口的右边缘,无论文本行有多长。

也许分类格式在这里不是最好的解决方案。但是有什么选择呢?
(更喜欢一个简单的。我想我可以得到窗口句柄并自己绘制标记......)

0 投票
1 回答
6402 浏览

visual-studio-2012 - VSIX - 无法加载引用的 dll 的文件或程序集

我的问题与这个问题非常相似,只是答案和解决方法对我不起作用。我也在 Visual Studio 2012 中。

我有一个引用另一个项目的 VSPackage,它依赖于其他 dll。每次我在调试中运行我的包时,我都会收到一个无法找到其他 dll 的异常。它们位于输出目录中,并且已签名。

我尝试通过 VSPackage 项目直接引用它们无济于事。

想法?

0 投票
1 回答
165 浏览

visual-studio - 分发 Visual Studio 隔离 Shell 应用程序

我正在考虑使用Visual Studio 隔离外壳实现应用程序。包含依赖项的方法是包含Visual Studio 隔离 shell 可再发行包,但它是221.6Mb。对我们来说非常大。

您是否知道任何其他替代方案,也许只分发您正在使用的 DLL?

比如我只需要Docking Windows系统和编辑器。我可以只在我的安装程序中添加一些更轻的 DLL 吗?

0 投票
2 回答
913 浏览

c# - 在VSpackage的ToolWindow中获取解决方案名称

我是 Visual Studio 可扩展性框架的新手,可以使用 VSPackage 扩展。我想在 MyToolWindow 类中调用的用户控件中获取 DTE 对象。

我尝试了以下所有可能性:

1.EnvDTE80.DTE2 dte2; dte2 = (EnvDTE80.DTE2)System.Runtime.InteropServices.Marshal.GetActiveObject("VisualStudio.DTE.10.0"); string solutionPath=dte2.Solution.FullName;

上面的试验只给出了打开的视觉工作室的第一个实例的解决方案路径。对于 EX:如果打开 Math1.sln 和 Math2.sln,则只有 Math1.sln 路径分配给 solutionPath。

  1. MSDN链接中,无法在 button1.click 中识别“this.GetService”(我在这里遗漏了什么)

一旦获得 DTE 对象,我就可以很容易地获得当前实例的解决方案名称。

我必须能够在单击用户控件内的按钮内获得适当的 EnvDTE80.DTE 对象。此用户控件在 MyToolWindow.cs 中调用

对此的任何帮助将不胜感激。

0 投票
1 回答
69 浏览

visual-studio-2010 - 覆盖 VS2010 Project Invalidated (refreshed) 事件

当外部程序更改项目或解决方案文件时,我试图覆盖 VS2010 行为。Atm VS 会弹出一个弹出窗口,询问您是否要重新加载/保存项目文件。

我试图覆盖这种行为,但是我还没有找到解决方案。是否有某种方法可以覆盖事件或以编程方式设置 VS,以便它自动让外部更改刷新活动项目?

0 投票
1 回答
182 浏览

visual-studio-2012 - 无法在 VS 2012 扩展中设置某些查找选项

我正在尝试在我的 VS2012 扩展中打开查找对话框,但我无法设置除查找文本之外的任何选项:

我错过了什么吗?我正在使用 VS 2012 更新 1。


感谢 Ameen,我现在正在尝试一种不同的方法,但是我找不到任何关于在发出命令时需要如何设置参数的文档:

这将始终给我一个 E_INVALIDARG。

0 投票
1 回答
205 浏览

visual-studio-2012 - Visual Studio 2012 扩展中的状态驱动菜单项

我正在编写一个 Visual Studio 2012 扩展,它定义了几个子菜单以进入两个现有的 Visual Studio 上下文菜单。子菜单项似乎可以正常工作,除了一件事:

在单击我的包中的第一个菜单项之前,每个菜单项的状态都是其默认状态,具体取决于其在 VSCT 文件中的定义。这适用于始终启用的菜单项,但应根据某些变化条件启用或禁用某些菜单项。安装包后,它们的状态设置正确,但是如何在单击第一项之前正确设置状态?

我的解决方案中没有默认状态。我的菜单第一次出现时,条件可能是真或假。

如果您对此有解决方案,或者知道某处的教程中已解决此问题,我将不胜感激。