22 lines
986 B
PowerShell
22 lines
986 B
PowerShell
$assetTableRef = $wsmanConnectionObject.NewReference("SELECT * FROM AMT_AssetTable WHERE TableType='131'")
|
|
$assetTableInstance = $assetTableRef.Get()
|
|
$tableData = $assetTableInstance.GetProperty("TableData")
|
|
$tableDataInBytes = [System.Convert]::FromBase64String($tableData)
|
|
$cpuCapabilities = New-Object 'System.Collections.Generic.Dictionary[string,int]'
|
|
$cpuCapabilities.Add("VMX state", 0)
|
|
$cpuCapabilities.Add("SMX state", 0)
|
|
$cpuCapabilities.Add("LT/TXT", 0)
|
|
$cpuCapabilities.Add("LT/TXT State", 0)
|
|
$cpuCapabilities.Add("VT-x", 0)
|
|
$cpuCapabilities.Add("VT-x State", 0)
|
|
$cpuCapabilitiesList = $tableDataInBytes[12]
|
|
$cpuCapabilitiesBites = [Convert]::ToString($cpuCapabilitiesList, 2)
|
|
foreach($key in @($cpuCapabilities.Keys))
|
|
{
|
|
if($cpuCapabilitiesBites -band (0x00000001))
|
|
{
|
|
$cpuCapabilities.Item($key.ToString()) = 1
|
|
}
|
|
$cpuCapabilitiesList = [Math]::Floor([int] $cpuCapabilitiesList / [int] 2)
|
|
$cpuCapabilitiesBites = [Convert]::ToString($cpuCapabilitiesList, 2)
|
|
} |