问题标签 [vssdk]

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 回答
838 浏览

typescript - 在 Angular-CLI 组件中导入 vss-web-extension-sdk 模块

我正在尝试创建一个基于 angular/cli 应用程序的 VSTS/TFS 扩展。我使用ng new创建了一个新应用程序,它可以编译并正常运行。现在,我的问题是在我的组件中引用和使用 vss sdk。

我根据此处提出的建议进行了一些更改:

  1. 在 package.json 依赖项中添加了“vss-web-extension-sdk”:

    “依赖”:{“@angular/animations”:“^4.0.0”,“@angular/common”:“^4.0.0”,“@angular/compiler”:“^4.0.0”,“@angular /core": "^4.0.0", "@angular/forms": "^4.0.0", "@angular/http": "^4.0.0", "@angular/platform-b​​rowser": "^ 4.0.0”、“@angular/platform-b​​rowser-dynamic”:“^4.0.0”、“@angular/router”:“^4.0.0”、“core-js”:“^2.4.1”、 “rxjs”:“^5.1.0”,“vss-web-extension-sdk”:“^2.117.0”,“zone.js”:“^0.8.4”},

  2. 添加了以下 typings.json 文件:

    /li>
  3. 导入的“VSS/上下文”

    从 'VSS/Context' 导入 * 作为 VSS_Context;

此时应用程序构建没有错误,但是当我尝试使用导入的模块时,我收到构建错误:找不到模块:错误:无法解析“VSS/Context”

这就是我使用导入模块的方式:

整个应用程序可以在https://github.com/shaycy/tfs-ng-app找到

0 投票
1 回答
179 浏览

visual-studio-2010 - VS2010 加载项目失败,错误 framework version=v4.0 not found

在我的 Win7 64 位上重新安装 VS2010、.Net framework 4.0、.net framework4.5、visual studio 2010 SDK 后,我无法让我的 VS2010 环境正常工作。错误信息如下图第一张: 在此处输入图像描述 我安装了.Net framework 4.0 无法理解该信息。4.5 会覆盖第一次安装的 4.0 吗?当我再次尝试运行 .NET Framework 4.0 安装程序时,它显示“此计算机上已经安装了相同或更高版本的 .NET Framework 4”,我别无选择,只能退出。

这些项目是在 VS2010 下开发的,并且加载和构建良好,直到我重新安装了上面提到的工具。

我安装的软件如下图: 在此处输入图像描述 在此处输入图像描述

在此处输入图像描述 在此处输入图像描述

0 投票
1 回答
1418 浏览

c# - 如何从 Visual Studio 扩展和新的 csproj 格式获取 IntermediateOutputPath

我有一个新样式的csproj项目文件,它覆盖IntermediateOutputPath. 它看起来像这样:

问题是,我的 Visual Studio 扩展无法访问IntermediateOutputPath属性。Project.Properties与旧项目格式相比,似乎有更少的东西。

我也尝试project.ConfigurationManager.ActiveConfiguration.Properties过类似的成功。

有没有办法从 Visual Studio 扩展中获取这些信息?

0 投票
2 回答
1531 浏览

visual-studio - 从构建服务器预处理 T4 模板时出现 FileNotFoundException

我正在尝试按照 Microsoft 文档Code Generation in a Build Process中的说明在我们的构建服务器上重建 T4 模板。当我构建时,模板生成失败并出现错误(完整的 MSBuild 输出在此问题后面):

错误 MSB4018:“TransformTemplates”任务意外失败。

错误 MSB4018:System.IO.FileNotFoundException:无法加载文件或程序集 'Microsoft.VisualStudio.TextTemplating.14.0,Version=14.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。该系统找不到指定的文件。

我创建了一个重现问题的最小项目。脚本 build.cmd只是执行 MSBuild。当我从我的工作站运行build.cmd时,构建成功。它仅在构建服务器上失败。

我尝试过的事情:

  • 按照代码生成文档的规定,将 MSBuild 和 Visual Studio 程序集复制到生成服务器。

  • 将 Visual Studio 程序集添加到 GAC。

  • VSSDK140Install环境变量设置为“C:\Program Files (x86)\Microsoft Visual Studio 14.0\VSSDK\”(因为这是在我的工作站上设置的)。

  • 设置HKLM\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0!InstallDirC:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\

我试图避免安装 Visual Studio 2015,因为这是添加到我们的构建服务器的一个非常大的依赖项,并且 Microsoft 文档明确表示这应该是可能的。

将程序集复制到 C:\Program Files (x86)

我已按照代码生成文档中的说明将以下文件复制到构建服务器(这些文件都在Program Files (x86)文件夹中,因为它们在我的机器上):

  • $(ProgramFiles)\MSBuild\Microsoft\VisualStudio\v*.0\TextTemplating
    • Microsoft.VisualStudio.TextTemplating.Sdk.Host.14.0.dll
    • Microsoft.TextTemplating.Build.Tasks.dll
    • Microsoft.TextTemplating.targets
  • $(ProgramFiles)\Microsoft Visual Studio 14.0\VSSDK\VisualStudioIntegration\Common\Assemblies\v4.0
    • Microsoft.VisualStudio.TextTemplating.14.0.dll
    • Microsoft.VisualStudio.TextTemplating.Interfaces.14.0.dll(几个文件)
    • Microsoft.VisualStudio.TextTemplating.VSHost.14.0.dll
  • $(ProgramFiles)\Microsoft Visual Studio 14.0\Common7\IDE\PublicAssemblies\
    • Microsoft.VisualStudio.TextTemplating.Modeling.14.0.dll

添加到 GAC

我看到它尝试加载失败 Microsoft.VisualStudio.TextTemplating.14.0.dll,并且由于该程序集位于我工作站上的 GAC 中,我猜这可能是必需的,所以我尝试使用 GAC Manager添加 Microsoft.VisualStudio.TextTemplating.14.0.dll到 GAC,但错误是相同的。

完整的 MSBuild 输出

当我运行时build.cmd,我得到以下输出:

0 投票
2 回答
853 浏览

visual-studio - 如何在 Visual Studio 扩展的代码编辑器中获取有关鼠标位置下单词的信息

我正在尝试通过玩一点来学习如何创建视觉工作室扩展。
我想在代码编辑器(c#)中获取有关鼠标下单词的所有信息,但我不知道该怎么做。我不想自己分析代码,因为必须有这样的机制,因为所有这些信息都在例如工具提示中(也许它足以捕获工具提示数据)。
为了使这一点更清楚: -
如果您将鼠标悬停在变量上,我想知道这个词是一个变量,我也想知道这个变量的名称和类型。任何其他类型、界面等都相同
。-如果您将鼠标悬停在“var”关键字上,我想知道这个词是“var”关键字,我想知道它的类型。
- 如果您将鼠标悬停在“List[Domain.Example.TestClass]”之类的泛型类上,我想获得等于“TestClass”的类型,
基本上与工具提示中的内容相同。

我试图使用“IQuickInfoSource”,它允许我在光标下获取单词,但是我不知道如何获取任何其他数据。
我还尝试了“IMouseProcessorProvider”,最终得到了相同的结果,我能够获取当前单词,但可以获取任何其他信息。

你能告诉我如何实现这一目标吗?或者至少为我指明了正确的方向,因为很难找到任何关于 Visual Studio 扩展的适当文档。如果您需要更多信息,请询问。

提前致谢。

0 投票
0 回答
218 浏览

vs-extensibility - 在 Visual Studio 解决方案资源管理器中显示标记

在此处输入图像描述

我需要在我的 Visual Studio 扩展中显示一些标记(如图所示)。我已经浏览了 VS SDK 文档,并且在此特定要求中没有任何参考。有没有办法用当前的 SDK 做到这一点?提前致谢。

https://docs.microsoft.com/en-us/visualstudio/extensibility/visual-studio-sdk

0 投票
1 回答
99 浏览

visual-studio-2017 - 我在哪里可以下载最新版本的 VSLangProj150

我正在寻找的当前版本,VSLangProj150.dll但我似乎无法在任何地方找到它。

我有这个版本,从 nuget 检索到 VSLangProj150.15.0.26228,但我相信这是一个旧版本,因为:1)它于 2017 年 4 月 13 日发布,2)它只包含一个名为的接口PackageReferences,它是空的和一个VsProjReferencesPropId150枚举只有两个值。

今天,我已经安装了 VS 2017 v15.5 并包含了 Visual Studio SDK 组件,但我似乎在我的系统上的任何地方都找不到 dll。

似乎有一个新版本,因为我在网络上看到了引用VSProject4Reference6VSLangProj150. 我发现这个参考资料NuGet.Clients如下: AsVsProject4.PackageRefereences?.InstalledPackages

还是我错过了什么?

0 投票
1 回答
38 浏览

c# - 差异分类器 - MEF 组件

我想实现一个 Diff Classifier,所以我下载了 VSSDK Extensibility 示例的Diff Classifier。运行 Diff Classifier 扩展会显示正确的分类颜色。

我开发了一个扩展,我想添加差异分类器。extension.vsixmanifest 包含两个资产:

  • VsPackage(扩展名)
  • MefComponent(包含 Diff Classifier 扩展的类的类库)。

如果解决方案在专业的 Visual Studio 2017 社区应用程序中运行,则不会显示差异分类器颜色。

我需要做一些特别的事情来注册 MEF 组件吗?我不知道出了什么问题,因为我只是将 Diff Classifier 示例的 (3) 个类复制到了我的解决方案中的类库中。

也许你知道一个解决方案。

0 投票
1 回答
375 浏览

tfs - TFS Web 扩展:如何限制对中心或页面的访问

我开发了一个 TFS 网络扩展。我有一些辅助数据放在单独的页面上,当前可以从集线器访问。我想限制对该数据的访问,以便它只能由具有某些权限的人更改(例如,只有将“管理项目属性”设置为允许的人)。

两个集线器都是按照这些说明创建的,但似乎没有提到如何限制对集线器的访问。

据此我不能限制对集线器组的访问,听起来这也可能适用于集线器。

是否可以根据用户的权限隐藏集线器?如果不是,我有什么选择来限制对辅助数据的访问?

0 投票
0 回答
119 浏览

tfs - VSTS 窗口关闭事件

我正在使用 microsoft VSTS 模态对话框 ,当从“x”(模态对话框的关闭按钮)关闭模态对话框时,我想要一条确认消息,我收到关闭事件,该事件在事件对话框关闭后触发。

在关闭对话框之前我想要一个事件。我怎样才能做到这一点?