2
我的Powershell腳本必須從VS命令提示符運行,並且我想通過檢查msbuild.exe是否在路徑中來驗證。我設法做到這一點使用where.exe:如何查找某個文件在系統路徑中是否可用?
where.exe msbuild.exe > $null
if ($LASTEXITCODE -ne 0)
{
throw "BuildAll must be run from ""Developer Command Prompt for VS2012"" shortcut."
}
然而,這種感覺並不像「PowerShell的方式」 - 有沒有做到這一點PowerShell的本地方法是什麼?因爲腳本是
if (TEST-PATH (JOIN-PATH (Split-Path -parent $MyInvocation.MyCommand.Definition) "msbuild.exe "))
{
...
}
else
{
...
}
'Get-Command'解決方案就是這樣。我注意到我不需要劇組''布爾]' - 我基本上只是這樣做: 'if(!(Get-Command「msbuild.exe」...)){throw「BuildAll must be run .. 「}' – Jonathan
@Jonathan很高興幫忙!我不喜歡拋出異常,但它可以工作! ;) –