【问题标题】:Creating a Visual Studio 2013 extension that hosts PowerShell创建托管 PowerShell 的 Visual Studio 2013 扩展
【发布时间】:2014-01-14 18:30:41
【问题描述】:

我的大部分构建过程都是 PowerShell 脚本和函数的集合,所有这些都在 .ps1 文件中定义。我只是在我的桌面上有一个该文件的快捷方式,它会启动 PowerShell 并初始化所有内容。

现在,我认为如果我可以在 Visual Studio 2013 环境中中运行该 shell,将会很方便。这样,当我想要构建、发布内容到 IIS、执行数据库配置等时,我不需要不断切换窗口。应该很容易吧?

我发现的第一件事是PowerConsole,它是 Visual Studio 的一个扩展,它允许用户从 VS 中访问 Power Shell。但是,它仅适用于 Visual Studio 2010。According to the author,NuGet 团队基本上分叉了他的代码,现在它是 NuGet 控制台的一部分。所以,我的下一个想法是只使用 NuGet 控制台。这有几个问题:

  1. 它被称为“包管理器控制台”并隐藏在某个菜单中。我想要一些易于理解的东西,并清楚它是我的产品的构建环境。
  2. 虽然您可以运行 PowerShell 命令,例如 dir,但它的行为并不像 PowerShell。例如,您无法更改提示,即使您覆盖了prompt 函数。
  3. 似乎没有办法覆盖配置文件。当我运行我的 BuildShell.ps1 文件时,文件中的任何函数都没有注册,似乎没有任何变化。

总的来说,这似乎是一种将自定义构建环境集成到 Visual Studio 中的巧妙方法。所以,下一步是创建我自己的扩展。毕竟,这就是 NuGet 的全部内容,对吧?

问题:

如何为 Visual Studio 2013 创建类似 NuGet 的扩展? MSDN 有很多Visual Studio 2013 Extension samples,但它们似乎是针对扩展编辑器(例如 reSharper 可能做的)而不是创建新的命令窗口。我正在寻找可以帮助我入门的东西,或者我可以查看的开源程序。谢谢!

【问题讨论】:

    标签: visual-studio powershell visual-studio-2013 visual-studio-extensions


    【解决方案1】:

    【讨论】:

    • 这似乎是编辑和调试.ps1 脚本的扩展。它是否还允许您在 Visual Studio 中托管 PowerShell?
    • 我在这里很清楚,您只是希望 shell 出现在编辑器中,对吗?您不是在寻求将应用程序连接到运行空间,对吧?
    • 基本上我希望 PowerShell.exe 在 Visual Studio 的一个窗口中。我希望能够运行.ps1 文件、创建新函数、更改目录以及我可以在 PowerShell.exe 中执行的所有其他操作。
    • 我使用过 PowerShell 工具,但它没有给你一个 shell 窗口。我有一个 Web 服务,用于在 C# 应用程序中执行一些 powershell 脚本,但只完成了一次,然后我继续。通常,我只使用 PowerGui 和 shell 窗口进行编辑。我只是添加了一个新的外部工具,但它添加了一个用于启动 PowerShell 的链接。几乎没有你想要的。
    • Power Console 接近 我想要的。但是,您似乎无法更改提示或创建配置文件(例如启动时自动运行的脚本)。另外,它仅适用于 VS2010。我很想了解 Power Console 源代码。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多