问题标签 [visual-studio-package]

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 投票
1 回答
537 浏览

c# - 调用 Visual Studio 模态对话框

我正在开发一些 Visual Studio 包项目(vsix),我需要显示一个模式对话框,以防止其背后的点击。类似于 Visual Studio 关于对话框的东西。

在此处输入图像描述

在显示此对话框时,拒绝单击此对话框。

我确实使用 Forms.Form.showDialog 尝试过,但它只能在 vsix 上下文中工作(它可以防止在其自身的表单中点击,而不是在 Visual Studio 窗口中)。

有人能帮我吗?

谢谢

0 投票
1 回答
1267 浏览

visual-studio - 如何从 Web 安装程序重新安装 Visual Studio 包

每当我在 Visual Studio 2015 社区版中添加新的 javascript 文件、打字稿文件时,我都会遇到错误。

在此处输入图像描述

经过研究,通过从 ISO 文件安装以下软件包来解决此问题:

x:\packages\JavaScript_LanguageService\JavaScript_LanguageService.msi

我没有 ISO 文件,如何从 Visual Studio Web 安装程序重新安装这个包?

0 投票
1 回答
205 浏览

c# - 在 C# 中将 Asp.Net MVC 应用程序附加到 iisexpress

我开发了一个 Visual Studio 包插件,今天我需要在 C# 中实现对 iisexpress 的附加。

我的插件通过上下文菜单中的按钮在 Visual Studio 编辑器中构建活动文档项目,在例程结束时,我需要附加它。

我研究并发现它:

但是,当执行此代码时,Visual Studio 会冻结并关闭。

在这段代码之前,我尝试通过以下方式找到 iisexpress 进程:

所以我知道这个过程是存在的。

我是不是忘记了什么?

有人可以帮助我吗?

谢谢你的时间。

0 投票
1 回答
37 浏览

visual-studio - VSShellStub2.exe - 系统错误

为了运行使用 Microsoft Visual Studio 隔离 Shell 2013 开发的应用程序,需要在目标计算机中安装哪些先决条件。

在一台全新的 Win7 SP1 64 位机器上,我安装了 Microsoft Visual Studio 隔离 Shell 2013 Redistributable 包。

但是启动应用程序时出现错误

VSShellStub2.exe - 系统错误

程序无法启动,因为您的计算机缺少 MSVCR120D.dll。尝试重新安装程序以解决此问题。

我是否需要安装任何其他应用程序才能使其工作?

0 投票
1 回答
583 浏览

c# - 订阅 EnvDTE80.DTE2.Events2.PublishEvents.OnPublishBegin 的正确方法是什么?

我正在将 VS 插件移植到 VS 包中。包在初始化时订阅 OnBuildBegin 和 OnPublishBegin。Visual Studio 按预期触发 OnBuildBegin,但永远不会调用 OnPublishBegin。

或多或少相同的代码在 Visual Studio 2013、2012 和 2010 中作为插件工作。但是在 VS 2015 作为 VS 包中,OnPublishBegin 似乎不起作用。

示例代码如下。

测试运行配置为在实验模式下启动第二个 VS 实例的调试器的代码。在第二种情况下,我打开一个不同的解决方案并使用发布向导进行发布。

任何人都可以为我阐明这个问题吗?

0 投票
1 回答
147 浏览

visual-studio-2015 - 它如何创建 Visual Studio 2015 包,以及 - SDK 到底在哪里?

试图为 Microsoft Visual Studio 2015 创建一个“Visual Studio 包”(一种供开发人员在 Visual Studio 本身中使用的工具)?

我买的一本书表明该选项应该可以通过“新项目”>模板> Visual C#>可扩展性访问。但是那个选项“Visual Studio Package”不存在。

我确实下载了据称是 2015 年的 VS SDK 并安装了它。它表明它是 2013 年安装的。即使在重新启动后,它也没有任何区别。

顺便说一下,那个 SDK 很难找到。微软的网页似乎来回弹跳,从不放弃。什么杂乱无章的废话!

这里的任何提示将不胜感激。我可以恢复到 Visual Studio 2013,但如果可能的话,我宁愿尝试 2015 年。

谢谢,詹姆斯赫斯特

0 投票
1 回答
147 浏览

c# - Visual Studio 包 - 在代码中包含和使用外部资源(图像)

我目前正在使用 C# 开发一个 Visual Studio 包项目,它提供了一个新的工具窗口来存储和复制自定义代码片段。

到目前为止,我设计的小窗口如下:

图形设计概述

窗口的 XAML 代码是:

我使用的自定义数据模型:

打开工具窗口后,以下源代码会加载模板文件夹的内容和子目录内容:

在下一步中,我想用特定图像可视化树视图控件中的文件夹和文件。如您所见,我已经在数据模型和 XAML 绑定中实现了图像属性。

现在的问题是我不知道如何将这些图像添加到项目中并通过代码访问它们。由于我已经研究过 Visual Studio 包项目,因此无法访问 Properties.Resources 内容。

如果有人可以帮助我解决这个问题,我将不胜感激。

0 投票
1 回答
1106 浏览

c# - 在 Visual Studio 上打开自定义工具窗口,而不从“视图”菜单中调用它

我已经看到,通过 Visual Studio 可扩展性工具,您可以添加自定义命令,如灯泡、工具窗口(如属性面板)等等......

基本上,我正在尝试创建一个自定义工具窗口,该窗口不是从View -> Other Windows 菜单打开,而是从我在自己的 UI 上创建的按钮打开。为此,我尝试创建一个基本上调用我的PaneResultsPackage类的委托,然后调用应该触发所有逻辑的 Initialize() 方法。但是,它不会生成窗格,因为包对象似乎是空的。

这基本上是类:

除了用于我创建的委托的OnSchemaAnalyzed方法之外,所有这些代码都是预先填充的。

如果不通过 View -> Windows 选项卡调用它,我如何才能拥有一个不包含空属性的包对象?

那么正确的方法是什么?

0 投票
1 回答
1256 浏览

c# - 以编程方式向类添加 using 指令

我正在研究 Visual Studio 可扩展性。来自MSDN的这段代码创建了一个新的 C# 解决方案,其中包含一个带有类的项目:

我设法使用VSLangProj添加对MyProject的引用。 到目前为止,一切都很好。 结果类是:

经过大量谷歌搜索后,我没有找到一种在类代码中添加 using 指令的方法(在本例中为using NUnit.Framework;)。
简单的方法是编写直接操作类文档的行。
有没有办法使用 Visual Studio Extensibility 以编程方式进行?

更新

在尝试获取所创建类的CodeClass对象后,我尝试了发布在通过 DTE 按类型名称查找 ProjectItem ,几乎没有什么变化。这是更新的代码:

好吧,事实证明FindClass总是返回 null,因为 project.CodeModel.CodeElements.Count 为零。呃?

更新 2
好吧,请不要打败我。原始代码在projectPath变量中有多余的反斜杠。
这导致 project.CodeModel.CodeElements.Count 为零。
此外,FindClass需要不带扩展名的类FullName并且只搜索公共类。
我更正了代码,但仍然得到null作为回报(我猜是我自己的错:我一定错过了一些东西)。
无论如何,FindClass在所有项目 CodeElements中搜索给定的类,包括项目引用中的类。
就我而言,这有点过头了,因为我正在搜索项目本地的一个类。
所以我写了一个函数来做到这一点。
这里是 :

它可以工作,所以我创建了一个静态ClassFinder类并添加了该函数。
下一步是检索完整的类源代码,包括 using 指令。我在这里
找到了 MSDN 上的示例,这是关键代码:

实际上,第一行抛出了一个异常。所以我尝试了vsCMPart
枚举 的所有成员:它们中的大多数都抛出异常,除了: vsCMPart.vsCMPartBodyvsCMPart.vsCMPartHeadervsCMArt.vsCMPartNavigatevsCMPart.vsCMPartWholeWithAttributesvsCMArt.vsCMPartHeadervsCMPart.vsCMPartWholeWithAttributes返回相同的结果(至少在这种情况下), 而其他的不返回整个代码。 为了简短起见:


如果我们想要在 IDE 中出现的源代码,包括 using 指令,
我们必须使用 classCode.ProjectItem 对象:

现在我们非常接近问题的解决方案。看我的回答。(对不起,如果这看起来像一本小说)

0 投票
1 回答
305 浏览

visual-studio - Visual Studio 包无法在 VS 2017 RC 中调试

我有一个可以在 VS 2013 和 2015 中调试的 VSIX 包(扩展)。我现在调整了清单以允许将包安装在 VS 2017 中。但是,它不能正常工作,我想调试它。

我在 VS 2015 中打开包项目并告诉它使用通常的命令行开关在 VS 2017 RC 中调试包/rootsuffix Exp。一个干净的 VS 2017 实例启动,但该包未安装在其中,因此无法调试。如何解决这个问题?