Como posso executar o mt.exe em um prompt de comando do PowerShell

2

Eu preciso executar o mt.exe (parte do visual studio express) para incorporar um manifesto de aplicativo em outro executável. Normalmente, o mt.exe é chamado a partir de um promtp de comando do Visual Studio. O procedimento é descrito aqui .

Eu preciso acionar esse comando em um prompt de comando do PowerShell, porque quero fazer isso durante um provisionamento de vagrant. Como posso conseguir isso?

    
por Maximilian 27.02.2017 / 13:48

1 resposta

0

Você pode importar as variáveis de ambiente do script em lote do Visual Studio usando a função Invoke-CmdScript deste artigo:

Assuma o controle das variáveis de ambiente no PowerShell

A definição da função é a seguinte:

# 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
  }
}

Coloque essa função em seu perfil do PowerShell e você poderá usá-la para executar o script do Visual Studio que define as variáveis de ambiente necessárias.

O artigo também contém as funções Get-Environment e Restore-Environment se você deseja implementar o escopo para as variáveis de ambiente que o script do Visual Studio define.

    
por 27.02.2017 / 17:48