Квалификаторы WMI
WMI имеет несколько типов квалификаторов классов и свойств. Квалификаторы также могут иметь изменяющие вкусы. В WMI используются следующие типы квалификаторов и вкусов.
Имя каждого квалификатора отображается с типом данных и индикатором того, может ли квалификатор применяться к классу, экземпляру, свойству или методу. Для квалификаторов, таких как Ассоциация (рассмотренная в разделе мета квалификаторов), существует подразумеваемое правило использования, которое также должно присутствовать метаклификатор. Например, неявное правило использования для квалификаторов агрегирования заключается в том, что квалификатор ассоциации также должен присутствовать.
Тип квалификатора | Описание: |
---|---|
Мета | Уточнение определения метаконструктивов путем уточнения фактического использования объявления класса или свойства. |
Необязательный | Устраняет ситуации, не общие для всех реализаций, совместимых с CIM. |
Вкусы квалификатора | Предоставляет дополнительные сведения о квалификаторе, например о том, может ли производный класс или экземпляр переопределить исходное значение квалификатора. |
Standard Edition | Поддерживает описания, которые должны обрабатывать все реализации, совместимые с CIM. |
Инструментарий WMI | Описывает квалификаторы, относящиеся к WMI, например квалификаторы класса счетчиков производительности. |
Дополнительные сведения о применении квалификаторов к классам WMI см. в разделе "Добавление квалификатора". Чтобы узнать, как изучить квалификаторы для существующих классов WMI, см. пример кода ниже.
Пример
Следующий код PowerShell, взятый из коллекции TechNet, описывает, как получить квалификаторы из класса WMI.
Function Get-WMIClassesWithQualifiers
{
Param([string]$qualifier = "dynamic",
[string]$namespace = "root\cimv2")
$classes = Gwmi -list -namespace $namespace
foreach($class in $classes)
{
$query = "select * from meta_class where __this isa ""$($class.name)"" "
$a = gwmi -Query $query -Namespace $namespace |
select -Property __class, qualifiers
if($a.qualifiers | % { $_ | ? { $_.name -match "$qualifier" }})
{ $a.__class }
} #end foreach $class
}