PowerShell create WMI Class



我正在尝试创建一个WMI类并填充它

我无法完全理解";枚举可用";

我知道如何使InvalidExtensions可枚举,但我不知道如何在创建WMI实例时填充此字段

我也不知道如何预填充Possible Enumeration Values

到目前为止我的代码

$newClass = New-Object System.Management.ManagementClass("rootcimv2", [String]::Empty, $null); 
$newClass["__CLASS"] = "Test"; 
$newClass.Qualifiers.Add("Static", $true)
$newClass.Properties.Add("Username",[System.Management.CimType]::String, $false)
$newClass.Properties["Username"].Qualifiers.Add("Key", $true)
$newClass.Properties.Add("TotalFileCount",[System.Management.CimType]::UInt16, $false)
$newClass.Properties.Add("TotalFolderCount",[System.Management.CimType]::UInt16, $false)
$newClass.Properties.Add("TotalSizeMB",[System.Management.CimType]::UInt16, $false)
$newClass.Properties.Add("InvalidFileNameCount",[System.Management.CimType]::UInt16, $false)
$newClass.Properties.Add("InvalidExtensionCount",[System.Management.CimType]::UInt16, $false)
$newClass.Properties.Add("InvalidExtensions",[System.Management.CimType]::String, $false)
$newClass.Properties["InvalidExtensions"].Qualifiers.Add("Values",$true)
$newClass.Put()
Set-WmiInstance -Class Test -Argument @{Username="testaccount";TotalFileCount="5191";TotalFolderCount="355";TotalSizeMB="3660";InvalidFileNameCount="10";InvalidExtensionCount="2";InvalidExtensions=".appx",".ost"}

我想出了如何添加值

已更改

$newClass.Properties.Add("InvalidExtensions",[System.Management.CimType]::String, $false)

$newClass.Properties.Add("InvalidExtensions",[System.Management.CimType]::String,"StringArray")

然后在添加值时可以使用标准数组

我仍然不知道如何在类属性中设置可能的值

最新更新