Applicazione di un qualificatore
Come molte altre tecniche in Managed Object Format (MOF), l'applicazione di un qualificatore al codice è un processo relativamente semplice.
Le uniche sfide reali sono le restrizioni seguenti nelle convenzioni di denominazione applicate da WMI:
Un qualificatore può descrivere una classe, un'istanza, una proprietà, un metodo o un parametro del metodo.
I nomi dei qualificatori non possono avere caratteri di sottolineatura iniziali o finali.
Un nome qualificatore non può iniziare con una cifra.
Un nome qualificatore non può contenere caratteri speciali, ad esempio & * @ ! ~ \ /.
Tutti i nomi dei qualificatori non fanno distinzione tra maiuscole e minuscole.
Non è possibile ridefinire i qualificatori WMI standard o i qualificatori descritti nella specifica CIM DMTF.
I tipi qualificatori non vengono dichiarati in modo esplicito.
Se non si dichiara un tipo qualificatore, WMI presuppone che il tipo sia Boolean con un valore TRUE. In caso contrario, i qualificatori di tipi WMI in base ai valori di qualificatore dichiarati.
Quando si creano qualificatori personalizzati, è necessario anteporre il nome dello schema al nome del qualificatore.
Lo scopo di questa regola è evitare confusione con i nuovi qualificatori.
È possibile creare matrici omogenee di qualificatori.
Nell'esempio di codice seguente viene illustrato come vengono specificate matrici di qualificatori con parentesi graffe che racchiudono i valori.
[StringArray{"hello", "there"}, SingleElementArray{3}]
WMI non supporta i tipi di automazione non elencati nel riferimento, ad esempio VT_NULL. Per altre informazioni, vedere Tipi di dati MOF.
La procedura seguente consente di usare C++ per aggiungere un qualificatore a una proprietà .
Per applicare un qualificatore con C++
Applicare il qualificatore con una chiamata al metodo IWbemQualifierSet::P ut .
È possibile usare altri metodi di IWbemQualifierSet per recuperare o eliminare qualificatori esistenti.
La procedura seguente consente di applicare un qualificatore nei file MOF.
Per descrivere una parola chiave o un identificatore con un qualificatore tramite MOF
Posizionare un qualificatore tra parentesi quadre prima della parola chiave o dell'identificatore descritto dal qualificatore.
Nell'esempio di codice seguente viene illustrato come vengono usati i qualificatori.
[qualifiers...] class StdDisk { [qualifiers...] uint32 dwNumCylinders; [qualifiers...] uint32 dwNumHeads; [qualifiers...] sint32 Method1(); sint32 Method2([qualifiers...] Parameter1); };
Nell'esempio seguente viene descritto il posizionamento corretto dei qualificatori.
[Abstract] class MyClass { [Amendment, InstanceOf] uint32 dwNumber; sint32 MyMethod ([in] sint32 Param); };