如何在 PowerShell 命令提示符中执行 mt.exe

如何在 PowerShell 命令提示符中执行 mt.exe

我需要运行 mt.exe(Visual Studio Express 的一部分)以将应用程序清单嵌入到另一个可执行文件中。通常,mt.exe 是从 Visual Studio 命令提示符调用的。该过程如下所述这里

我需要从 PowerShell 命令提示符触发此命令,因为我想在 vagrant 配置期间执行此操作。我该如何实现?

答案1

Invoke-CmdScript您可以使用本文中的函数从 Visual Studio 的批处理脚本导入环境变量:

在 PowerShell 中管理环境变量

该函数的定义如下:

# Invokes a Cmd.exe shell script and updates the environment.
function Invoke-CmdScript {
  param(
    [String] $scriptName
  )
  $cmdLine = """$scriptName"" $args & set"
  & $Env:SystemRoot\system32\cmd.exe /c $cmdLine |
  Select-String '^([^=]*)=(.*)$' | ForEach-Object {
    $varName = $_.Matches[0].Groups[1].Value
    $varValue = $_.Matches[0].Groups[2].Value
    Set-Item Env:$varName $varValue
  }
}

将此函数放入您的 PowerShell 配置文件中,您可以使用它来运行设置所需环境变量的 Visual Studio 脚本。

如果您想为 Visual Studio 脚本设置的环境变量实现范围,本文还包含Get-Environment和函数。Restore-Environment

相关内容