Execute as ferramentas de linha de comando do Visual Studio no Windows Powershell

10

No cmd.exe, eu simplesmente rodaria

%VS80COMNTOOLS%\vsvars32.bat

para configurar o ambiente para executar as ferramentas de linha de comando do Visual Studio (por exemplo, cl, link, mt etc.). Gostaria de saber como posso configurar o ambiente para executar essas ferramentas no Powershell. Claro, é possível executar arquivos em lote usando

start-process $env:vs80comntools\vsvars32.bat

mas o ambiente desaparecerá quando o processo terminar. Eu já fiz algumas experiências com o System.Diagnostics.StartProcessInfo, por exemplo

$proc = start-process $env:vs80comntools\vsvars32.bat -passthru
$procInfo = proc.StartInfo

e, em seguida, obter o ambiente de $procInfo.EnvironmentVariables , mas isso também não funciona.

Existem outras maneiras de configurar o ambiente no Powershell?

    
por Uwe Honekamp 04.02.2010 / 21:00

2 respostas

5

As Extensões da comunidade do PowerShell têm um cmdlet Import-VisualStudioVars .

    
por 04.02.2010 / 21:15
2

O Import-VisualStudioVars do PSCX é um script grande que tenta duplicar o que o vsvars32.bat faz. O problema é que mantê-los sincronizados requer esforço e pode ser uma fonte de erros.

Eu prefiro confiar em vsvars32.bat para fazer o que ele faz e importar o env. vars. no PowerShell. Eu faço isso com Invoke-CmdScript.ps1 .

    
por 06.02.2010 / 04:45