Determine status behaviour based on PS version

This commit is contained in:
Jon Topper 2016-03-06 16:51:27 +00:00
parent c4fab86752
commit 0a7c20a93a
1 changed files with 8 additions and 2 deletions

View File

@ -7,12 +7,18 @@ Param(
$Dir = Split-Path $script:MyInvocation.MyCommand.Path
. ([System.IO.Path]::Combine($Dir, "utils\write_messages.ps1"))
# Get the VM with the given name
if($PSVersionTable.PSVersion.Major -le 4) {
$ExceptionType = [Microsoft.HyperV.PowerShell.VirtualizationOperationFailedException]
} else {
$ExceptionType = [Microsoft.HyperV.PowerShell.VirtualizationException]
}
try {
$VM = Get-VM -Id $VmId -ErrorAction "Stop"
$State = $VM.state
$Status = $VM.status
} catch [Microsoft.HyperV.PowerShell.VirtualizationException] {
} catch $ExceptionType {
$State = "not_created"
$Status = $State
}