【问题标题】:Is there no TFS Snapin for PowerShell on x64?x64 上是否没有适用于 PowerShell 的 TFS 管理单元?
【发布时间】:2010-11-21 08:49:44
【问题描述】:

我正在尝试使用 PowerShell SDK 中的 System.Management.Automation 在 C# 代码中使用 PowerShell 中的 TFSSnapin,但是我想使用“AnyCPU”编译它。当我尝试在任何 CPU 中调试它时,我得到“未注册插件”错误,我尝试在 x86 模式下调试它,它工作得很好。有没有办法让插件在 x64 PowerShell 上注册,以便我可以使用 AnyCPU?还是我运气不好?

【问题讨论】:

    标签: c# tfs powershell


    【解决方案1】:

    没有。而且最早要到 TFS 2010 Beta 2 才能更改。见:Why is the TFS Powershell snapin marked 32-bit only?

    【讨论】:

      【解决方案2】:

      现在可以了

      在 64 位 PowerShell 命令提示符中执行以下行

      copy
      HKLM:\SOFTWARE\Wow6432Node\Microsoft\PowerShell\1\PowerShellSnapIns\Microsoft.TeamFoundation.PowerShell
       HKLM:\SOFTWARE\Microsoft\PowerShell\1\PowerShellSnapIns\Microsoft.TeamFoundation.PowerShell
      -r
      

      然后为Microsoft.TeamFoundation.PowerShell 添加 PSSnapin。

      【讨论】:

        【解决方案3】:

        确保您运行 64 位版本的 InstallUtil 以将管理单元信息安装到 64 位注册表(而不是 Wow 注册表节点)。如果您启动 64 位 Visual Studio 命令提示符,则应将路径配置为执行 64 位版本的 installutil.exe。

        【讨论】:

        • 我不能使用 64 位 InstallUtil,因为它只是说 dll 的格式不正确。看来他们只有 32 位 dll,所以也许我做不到。
        • 这很奇怪。我们将 PSCX 管理单元构建为 AnyCPU,我可以注册它并在 64 位 Powershell 提示符下使用它。
        • TFS PowerTools 中的 TFS 管理单元仅针对 x86 构建。他没有重新编译 TFS PowerTools 管理单元。
        • 哦,我误解了。我以为他有 snapin 的源代码,并且正试图做到这一点 - 重新编译它以针对任何 CPU。哇!
        猜你喜欢
        • 1970-01-01
        • 2010-11-06
        • 2018-12-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-04
        • 1970-01-01
        • 2016-08-28
        相关资源
        最近更新 更多