2016-06-13 1 views
1

Ищете эквивалент PowerShell этого CMD ошибок контроль:PowerShell эквивалент ЦМД "IF% ERRORLEVEL% NEQ 0"

IF %ERRORLEVEL% NEQ 0

Вот код PowerShell Я пытаюсь написать:

Write-Information "Installing .NET 3 from DVD:" 
$NetFX3_Source = "D:\Sources\SxS" 
dism /online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:$NetFX3_Source /NoRestart 
IF (****TheCommandYouTellMe****) { 
Write-Information "DVD not found, installing from online sources, the Win default method" 
DISM.EXE /Online /Add-Capability /CapabilityName:NetFx3~~~~ 
Add-WindowsCapability –Online -Name NetFx3~~~~ 
} 
+1

Возможный дубликат [Что такое '' $? \ 'В Powershell?] (Http://stackoverflow.com/questions/10634115/what-is-in-powershell) – briantist

+4

' $? 'Для внутренних команд' $ LASTEXITCODE' для внешнего –

+0

Я ищу, как проверить, ЛЮБАЯ ошибка и сделать это, если существует ошибка. Я ценю, что вы рассказываете мне, какую переменную проверить, но КАК это проверить? – gregg

ответ

4

с dism.exe это внешняя программа, вы хотите, чтобы проверить $LASTEXITCODE автоматическую переменную:

dism /online /andsoon 
if($LASTEXITCODE -ne 0) 
{ 
    # Add your capability 
}