Stosowanie kwalifikatora
Podobnie jak wiele innych technik w formacie MOF (Managed Object Format), zastosowanie kwalifikatora do kodu jest stosunkowo prostym procesem.
Jedynymi prawdziwymi wyzwaniami są następujące ograniczenia w konwencjach nazewnictwa, które wymusza WMI.
Kwalifikator może opisać klasę, wystąpienie, właściwość, metodę lub parametr metody.
Nazwy kwalifikatora nie mogą mieć ani wiodących, ani końcowych podkreślników.
Nazwa kwalifikatora nie może rozpoczynać się od cyfry.
Nazwa kwalifikatora nie może zawierać znaków specjalnych, takich jak & * @ ! ~ \ /.
Wszystkie nazwy kwalifikatora są bez uwzględniania wielkości liter.
Nie można ponownie zdefiniować standardowych kwalifikatorów WMI ani żadnych kwalifikatorów opisanych w specyfikacji CIM DMTF.
Typy kwalifikatora nie są jawnie deklarowane.
Jeśli typ kwalifikatora nie zostanie zadeklarowany, w usłudze WMI przyjęto założenie, że typ jest wartością logiczną z wartością TRUE. W przeciwnym razie typy WMI kwalifikują się na podstawie zadeklarowanych wartości kwalifikatora.
Podczas tworzenia własnych kwalifikatorów, należy poprzedzić nazwę kwalifikatora nazwą schematu.
Celem tej reguły jest uniknięcie zamieszania z nowymi kwalifikatorami.
Można utworzyć jednorodne tablice kwalifikatorów.
Poniższy przykład kodu pokazuje, jak tablice kwalifikatorów są określane za pomocą nawiasów klamrowych otaczających wartości.
[StringArray{"hello", "there"}, SingleElementArray{3}]
Usługa WMI nie obsługuje typów automatyzacji niewymienionych w dokumentacji, takich jak VT_NULL. Aby uzyskać więcej informacji, zobacz typy danych MOF.
Poniższa procedura ułatwia dodanie kwalifikatora do właściwości za pomocą języka C++.
Aby zastosować kwalifikator przy użyciu języka C++
Zastosuj kwalifikator z wywołaniem metody IWbemQualifierSet::Put.
Można użyć innych metod IWbemQualifierSet, aby pobrać lub usunąć istniejące kwalifikatory.
Poniższa procedura ułatwia zastosowanie kwalifikatora w plikach MOF.
Aby opisać słowo kluczowe lub identyfikator przy użyciu kwalifikatora MOF
Umieść kwalifikator w nawiasach przed słowem kluczowym lub identyfikatorem opisanym przez kwalifikator.
Poniższy przykład kodu pokazuje, jak są używane kwalifikatory.
[qualifiers...] class StdDisk { [qualifiers...] uint32 dwNumCylinders; [qualifiers...] uint32 dwNumHeads; [qualifiers...] sint32 Method1(); sint32 Method2([qualifiers...] Parameter1); };
W poniższym przykładzie opisano prawidłowe umieszczanie kwalifikatorów.
[Abstract] class MyClass { [Amendment, InstanceOf] uint32 dwNumber; sint32 MyMethod ([in] sint32 Param); };