Qualificatori standard
Tutte le implementazioni conformi a CIM devono gestire un set standard di qualificatori. Per qualsiasi oggetto specifico non sono elencati tutti i qualificatori. In genere, le classi di estensione forniscono qualificatori aggiuntivi per facilitare il provisioning di istanze di classe e altre operazioni sulla classe .
È responsabilità del provider applicare i qualificatori. WMI non applica qualificatori, ma li usa solo per informare l'utente del modo in cui viene utilizzata la proprietà.
Nota
WMI è conforme alla specifica CIM 2.5.
I qualificatori presentano le limitazioni seguenti:
- Non tutti i qualificatori standard possono essere usati insieme.
- Non tutti i qualificatori possono essere applicati a tutti i costrutti, ad esempio l'associazione o il riferimento. Queste limitazioni sono identificate nell'elenco Si applica a .
- Per un particolare costrutto, ad esempio l'associazione o il riferimento, l'uso dei qualificatori legali può essere ulteriormente vincolato perché alcuni qualificatori si escludono a vicenda, l'uso di un qualificatore può implicare alcune restrizioni sul valore di un altro e così via. Queste regole di utilizzo sono documentate.
- I qualificatori legali vengono ereditati da entità come proprietà, metodi, istanze o sottoclassi solo, non da associazioni o riferimenti. Ad esempio, il qualificatore MaxLen applicabile alle proprietà non viene ereditato dai riferimenti.
Di seguito sono elencati i qualificatori standard WMI.
Contenuto
Tipo di dati: booleano
Si applica a: classi, associazioni, indicazioni
Indica se la classe è astratta e funge solo da base per le nuove classi. Il valore predefinito è FAL edizione Standard. Non è possibile creare istanze di classi astratte. L'assenza di questo qualificatore indica che la classe non è astratta; pertanto, questo qualificatore è necessario per tutte le classi astratte.
Aggregazione
Tipo di dati: booleano
Si applica a: riferimenti
Indica se il riferimento è il componente padre di un'associazione di aggregazione. Il valore predefinito è FAL edizione Standard.
Utilizzo: i qualificatori aggregazione e aggregazione vengono usati insieme Aggregazione qualifica l'associazione e Aggregate specifica il riferimento padre.
Aggregazione
Tipo di dati: booleano
Si applica a: associazioni
Indica se l'associazione è un'aggregazione. Il valore predefinito è FAL edizione Standard. Usato con Aggregate. Questo qualificatore è obbligatorio per tutte le associazioni di aggregazione.
Alias
Tipo di dati: string
Si applica a: proprietà, riferimenti, metodi
Nome alternativo per una proprietà o un metodo nello schema. Il valore predefinito è NULL.
ArrayType
Tipo di dati: string
Si applica a: proprietà, parametri
Tipo della matrice qualificata.
Valori validi:
- borsa (impostazione predefinita)
- Indicizzato
- ordered
Utilizzo: applicare questo tipo di qualificatore solo alle proprietà e ai parametri che sono matrici (definite usando la sintassi tra parentesi quadre).
Bitmap
Tipo di dati: matrice di stringhe
Si applica a: proprietà, metodi, parametri
Mappa di posizioni di bit significative in cui ogni posizione significativa può essere "on" o "off". Ogni bit "on" esegue il mapping a un valore corrispondente nella matrice BitValues . Se sono presenti più bit "on", sono indicati più valori simultanei nella matrice BitValues . Il valore predefinito è NULL.
Per altre informazioni, vedere BitMap e BitValues.
BitValues
Tipo di dati: matrice di stringhe
Si applica a: proprietà, metodi, parametri
Conversione di un valore di posizione di bit in una stringa associata. Il valore predefinito è NULL.
Per altre informazioni, vedere BitMap e BitValues.
Costruttore
Tipo di dati: booleano
Si applica a: metodi
Indica se il metodo crea istanze. Questi metodi non sono vincolati a agire su una singola istanza o su una singola classe. Ad esempio, un costruttore può creare istanze di associazione e istanze della classe che definisce il costruttore.
Il qualificatore del costruttore è destinato solo alle informazioni e non è previsto che venga usato dal gestore oggetti. Il gestore oggetti non deve chiamare i metodi del costruttore quando viene creato un oggetto . Inoltre, quando viene chiamato un costruttore, il gestore oggetti non deve richiamare metodi del costruttore definiti per qualsiasi classe padre della classe originale. Il valore predefinito è FAL edizione Standard.
CreateBy
Tipo di dati: string
Si applica a: classi
Nome del metodo in base al quale vengono create le istanze di questa classe. Il valore è "PutInstance" o il nome di un altro metodo che crea le istanze. Il valore predefinito è NULL.
Utilizzo: questo qualificatore può essere usato solo se è presente il qualificatore SupportsCreate .
DeleteBy
Tipo di dati: string
Si applica a: classi
Nome del metodo in base al quale vengono eliminate le istanze di questa classe. Il valore è "DeleteInstance" o il nome di un altro metodo che elimina le istanze. Il valore predefinito è NULL.
Utilizzo: questo qualificatore può essere usato solo se è presente il qualificatore SupportsDelete .
Descrizione
Tipo di dati: string
Si applica a: qualsiasi
Descrizione di un elemento denominato. Il valore predefinito è NULL.
Distruttore
Tipo di dati: booleano
Si applica a: metodi
Indica se il metodo elimina le istanze. I metodi che usano il qualificatore distruttore eliminano le istanze a cui viene applicato il distruttore e non sono vincolati a agire su una singola istanza o classe. Ad esempio, un distruttore può eliminare istanze di associazione e istanze della classe che definisce il distruttore.
Il qualificatore distruttore è destinato solo alle informazioni e non è previsto che venga eseguito dal gestore oggetti. Non è necessario che il gestore oggetti chiami un metodo con qualificatore distruttore quando un'istanza viene eliminata. Inoltre, quando viene chiamato un distruttore, il gestore oggetti non deve richiamare metodi distruttori definiti per qualsiasi classe padre della classe originale. Il valore predefinito è FAL edizione Standard.
DisplayName
Tipo di dati: string
Si applica a: qualsiasi
Nome visualizzato nell'interfaccia utente anziché il nome effettivo dell'elemento. Il valore predefinito è NULL.
EmbeddedInstance
Tipo di dati: string
Si applica a: qualsiasi
L'elemento di tipo stringa qualificato contiene un'istanza incorporata. Il valore del qualificatore specifica il nome di una classe CIM nello stesso spazio dei nomi della classe proprietaria dell'elemento qualificato. L'istanza incorporata è un'istanza della classe specificata, incluse le istanze delle relative sottoclassi. Il valore predefinito è NULL.
Misuratore
Tipo di dati: booleano
Si applica a: qualsiasi
Indica se la proprietà rappresenta un numero intero non negativo, che può aumentare o diminuire, ma non superare mai un valore massimo. Il valore predefinito è FAL edizione Standard.
Il valore massimo della proprietà non può essere maggiore di 2^n - 1. N può essere 8, 16, 32 o 64 a seconda del tipo di dati della proprietà a cui viene applicato questo qualificatore. Il valore di un misuratore ha il valore massimo ogni volta che le informazioni modellate sono maggiori o uguali a tale valore massimo. Se le informazioni modellate successivamente diminuiscono al di sotto del valore massimo, anche il misuratore diminuisce. Questo qualificatore è applicabile solo alle proprietà con un tipo di dati integer senza segno.
In
Tipo di dati: booleano
Si applica a: parametri
Indica se il parametro viene utilizzato per passare valori a un metodo. Il valore predefinito è TRUE.
In uscita
Tipo di dati: booleano
Si applica a: parametri
Indica se il parametro è sia un parametro di input che di output.
Tipo di dati: booleano
Si applica a: proprietà, riferimenti
Indica se la proprietà fa parte dell'handle dello spazio dei nomi. Se più di una proprietà ha il qualificatore Key , tutte queste proprietà formano collettivamente la chiave (una chiave composta). Se insieme, le proprietà chiave devono fornire un riferimento univoco per ogni istanza di classe. Se questo qualificatore viene inserito in una proprietà, è consentito solo il valore TRUE .
Differita
Si applica a: proprietà
Indica che la proprietà è a elevato utilizzo di risorse da restituire e richiede molto tempo del processore e memoria. WMI migliora le prestazioni delle query non tentando di restituire le proprietà contrassegnate con il qualificatore Differita .
MappingStrings
Tipo di dati: matrice di stringhe
Si applica a: classi, proprietà, associazioni, indicazioni, riferimenti
Set di valori che indicano un percorso a una posizione in cui è possibile trovare altre informazioni sull'origine di una proprietà, una classe, un'associazione, un'indicazione o un riferimento. La stringa di mapping può essere un percorso di directory, un URL, una chiave del Registro di sistema, un file di inclusione, un riferimento a una classe CIM o un altro formato. Il valore predefinito è NULL.
Max
Tipo di dati: int
Si applica a: riferimenti
Il numero massimo di valori che un riferimento specificato può avere per ogni set di altri valori di riferimento nell'associazione. Il valore predefinito è NULL. Ad esempio, se un'associazione correla istanze A a istanze B e deve essere presente al massimo un'istanza A per ogni istanza B, il riferimento a A deve avere un massimo di un qualificatore.
MaxLen
Tipo di dati: int
Si applica a: proprietà, metodi, parametri
Lunghezza massima (in caratteri) di un elemento di dati stringa e indica il supporto di matrici a lunghezza fissa.
Se viene rilevata una matrice a lunghezza fissa, il qualificatore MaxLen contiene la lunghezza fissa trovata durante l'analisi. Se viene rilevata una matrice a lunghezza variabile, questo qualificatore non viene usato. MaxLen viene usato per suggerire il numero massimo di elementi che devono essere archiviati in una matrice. Quando si esegue l'override del valore predefinito, è possibile specificare qualsiasi valore intero senza segno (uint32). Un valore NULL (impostazione predefinita) implica una lunghezza illimitata.
Maxvalue
Tipo di dati: int
Si applica a: proprietà, metodi, parametri
Valore massimo dell'oggetto. Il valore predefinito è NULL.
Min
Tipo di dati: int
Si applica a: riferimenti
Cardinalità minima del riferimento (il numero minimo di valori che un riferimento specificato può avere per ogni set di altri valori di riferimento nell'associazione). Il valore predefinito è 0.
Ad esempio, se un'associazione correla istanze A a istanze B e deve essere presente almeno un'istanza A per ogni istanza B, il riferimento a A deve avere almeno un qualificatore.
Minvalue
Tipo di dati: int
Si applica a: proprietà, metodi, parametri
Indica il valore minimo dell'oggetto. Il valore predefinito è NULL.
ModelCorrespondence
Tipo di dati: matrice di stringhe
Si applica a: proprietà
Set di valori che indicano la corrispondenza tra la proprietà di un oggetto e altre proprietà nello schema CIM. Il valore predefinito è NULL.
Le proprietà dell'oggetto vengono identificate usando la sintassi seguente.
<nome> schema "_" <classe o nome> associazione "." <nome proprietà>
Non locale
Tipo di dati: string
Si applica a: riferimenti
Posizione di un'istanza, il cui valore è <namespacetype>://<namespacehandle> Il valore predefinito è NULL.
Utilizzo: questo qualificatore non può essere usato con il qualificatore NonlocalType .
NonlocalType
Tipo di dati: string
Si applica a: riferimenti
Tipo di posizione di un'istanza. Il valore è <namespacetype>. Il valore predefinito è NULL.
Utilizzo: questo qualificatore non può essere usato con il qualificatore non locale .
Nullvalue
Tipo di dati: string
Si applica a: proprietà
Valore che indica che la proprietà associata è NULL (la proprietà non ha un valore valido o significativo). Il valore predefinito è NULL.
Le convenzioni e le restrizioni usate per la definizione dei valori NULL sono uguali a quelle applicabili al qualificatore ValueMap . Si noti che questo qualificatore non può essere sottoposto a override. Non è possibile consentire a una sottoclasse di restituire un valore NULL diverso da quello della classe padre.
Verso l'esterno
Tipo di dati: booleano
Si applica a: parametri
Indica se il parametro restituisce valori da un metodo. Il valore predefinito è FAL edizione Standard.
Override
Tipo di dati: string
Si applica a: proprietà, metodi, riferimenti
Classe padre o costrutto subordinato (proprietà, metodo o riferimento) sottoposto a override dalla proprietà, dal metodo o dal riferimento dello stesso nome nella classe derivata. Il valore predefinito è NULL.
Il formato è:
[<classe>.]<costrutto subordinato>
Se il nome della classe viene omesso, l'override si applica al costrutto subordinato nella classe padre nella gerarchia di classi.
Utilizzo: il qualificatore override può fare riferimento a costrutti basati solo sullo stesso modello meta. Non è consentito modificare un nome di costrutto o una firma durante un'operazione di override.
OverrideValue
Si applica a: classi
Indica se il valore della proprietà in una sottoclasse esegue l'override del valore in una classe padre. L'implicazione funzionale è che, se si esegue una query sulla classe padre e se la clausola WHERE include questa proprietà, l'elemento padre deve restituire un'istanza con il valore sottoposto a override. Di conseguenza, Gestione Windows regola la clausola WHERE della query inviata alla classe padre per escludere i riferimenti a questa proprietà.
Propagate
Tipo di dati: string
Si applica a: proprietà
Nome della chiave propagata. Il valore predefinito è NULL.
L'uso di questo qualificatore presuppone l'esistenza di un solo qualificatore debole su un riferimento con la classe contenitore come destinazione. La proprietà associata deve avere lo stesso valore della proprietà denominata dal qualificatore nella classe dall'altra parte dell'associazione debole. Il formato è:
[<classe>.]<costrutto subordinato>
Utilizzo: quando viene usato il qualificatore Propagated , il qualificatore chiave deve essere specificato con un valore TRUE.
Lettura
Tipo di dati: booleano
Si applica a: proprietà
Indica se la proprietà è leggibile. Il valore predefinito è TRUE.
Obbligatorio
Tipo di dati: booleano
Si applica a: proprietà
Indica se per la proprietà è necessario un valore non Null. Il valore predefinito è FAL edizione Standard.
Revisione
Tipo di dati: string
Si applica a: classi, associazioni, indicazioni, schemi
Numero di revisione secondario dell'oggetto schema. Il valore predefinito è NULL.
Utilizzo: il qualificatore di versione deve essere presente per specificare il numero di versione principale quando viene usato il qualificatore revisione .
Schema
Tipo di dati: string
Si applica a: proprietà, metodi
Nome dello schema in cui è definita la funzionalità. Il valore predefinito è NULL.
Origine
Tipo di dati: string
Si applica a: classi, associazioni, indicazioni, riferimenti
Posizione di un'istanza. Il valore predefinito è NULL.
Il valore del qualificatore è <namespacetype>://<namespacehandle>.
Utilizzo: il qualificatore di origine non può essere usato con il qualificatore SourceType .
SourceType
Tipo di dati: string
Si applica a: classi, associazioni, indicazioni, riferimenti
Tipo di posizione di un'istanza. Il valore di questo qualificatore è <namespacetype>. Il valore predefinito è NULL.
Utilizzo: il qualificatore SourceType non può essere usato con il qualificatore Source .
SupportsCreate
Tipo di dati: booleano
Si applica a: classi
Indica se la classe supporta la creazione di istanze. Il valore predefinito è FAL edizione Standard.
SupportsDelete
Tipo di dati: booleano
Si applica a: classi
Indica se la classe supporta l'eliminazione di istanze. Il valore predefinito è FAL edizione Standard.
SupportsUpdate
Tipo di dati: booleano
Si applica a: classi
Indica se la classe supporta la modifica (aggiornamento) delle istanze. Il valore predefinito è FAL edizione Standard.
Terminale
Tipo di dati: booleano
Si applica a: classi
Indica se la classe può avere sottoclassi. Il valore predefinito è FAL edizione Standard.
Se viene dichiarata una sottoclasse, il compilatore genera un errore.
Utilizzo: questo qualificatore non può coesistere con il qualificatore Abstract . Se vengono specificati entrambi i qualificatori Terminal e Abstract , il compilatore genera un errore.
Unità
Tipo di dati: string
Si applica a: proprietà, metodi, parametri
Tipo di unità in cui viene espresso l'elemento di dati associato. Il valore predefinito è NULL.
Ad esempio, un elemento di dati delle dimensioni potrebbe avere un valore "byte" per unità.
ValueMap
Tipo di dati: matrice di stringhe
Si applica a: proprietà, metodi, parametri
Set di valori consentiti per una proprietà, un tipo restituito del metodo o un parametro del metodo. Il valore predefinito è NULL.
Utilizzo: questo qualificatore può essere usato da solo o in combinazione con il qualificatore Valori . Se usato in combinazione con il qualificatore Values , la posizione del valore nella matrice ValueMap fornisce la posizione della voce corrispondente nella matrice Values . Usare il qualificatore ValueMap solo con valori stringa e integer. La sintassi per rappresentare un valore intero nella matrice della mappa dei valori è [+|=]digit[*digit]. Il contenuto, il numero massimo di cifre e il valore rappresentato sono vincolati dal tipo della proprietà associata. Ad esempio, uint8 potrebbe non essere firmato, deve essere minore di quattro cifre e deve rappresentare un valore minore di 256.
Valori
Tipo di dati: matrice di stringhe
Si applica a: proprietà, metodi, parametri
Set di valori che converte un valore intero in una stringa associata. Il valore predefinito è NULL.
Questa proprietà specifica anche una matrice di valori stringa di cui eseguire il mapping a una proprietà di enumerazione. Questo qualificatore può essere applicato a una proprietà integer o a una proprietà stringa e il mapping può essere implicito o esplicito. Se il mapping è implicito, i valori delle proprietà integer o stringa rappresentano le posizioni ordinali nella matrice Values . Se il mapping è esplicito, la proprietà deve essere un numero intero e i valori validi della proprietà sono elencati nella matrice definita dal qualificatore ValueMap . Per altre informazioni, vedere Mappa valori.
Se non è presente un qualificatore ValueMap , la matrice Values viene indicizzata (relativa zero) usando il valore nella proprietà associata, il tipo restituito del metodo o il parametro del metodo. Se è presente un qualificatore ValueMap , l'indice dei valori viene definito dalla posizione del valore della proprietà nella mappa dei valori.
Versione
Tipo di dati: string
Si applica a: classi, schemi, associazioni, indicazioni
Numero di versione principale dell'oggetto schema. Il valore predefinito è NULL. Il numero di versione viene incrementato quando vengono apportate modifiche allo schema che modificano l'interfaccia.
Debole
Tipo di dati: booleano
Si applica a: riferimenti
Indica se le chiavi della classe a cui viene fatto riferimento includono le chiavi degli altri partecipanti all'associazione. Il valore predefinito è FAL edizione Standard.
Questo qualificatore viene usato quando l'identità della classe a cui si fa riferimento dipende dall'identità degli altri partecipanti dell'associazione. Nessun riferimento a una determinata classe può essere debole. Le altre classi nell'associazione devono definire una chiave. Le chiavi delle altre classi nell'associazione vengono ripetute nella classe a cui si fa riferimento e vengono contrassegnate con un qualificatore Propagated .
Scrittura
Tipo di dati: booleano
Si applica a: proprietà
Indica che le applicazioni o gli script possono modificare il valore della proprietà. L'account che esegue l'applicazione deve avere accesso allo spazio dei nomi che contiene istanze della classe . L'implementazione del provider può anche limitare l'accesso ai dati del provider. Un valore TRUE indica che la proprietà è leggibile e scrivibile dai consumer a cui è consentito l'accesso da WMI e dal provider. Il valore predefinito è FAL edizione Standard.
Una proprietà che non dispone del qualificatore di scrittura può comunque essere scrivibile. L'implementazione del provider può consentire la modifica di qualsiasi proprietà nelle classi del provider, indipendentemente dal fatto che sia presente il qualificatore di scrittura .
WriteAtCreate
Tipo di dati: booleano
Si applica a: proprietà
Indica se la proprietà è scrivibile durante la creazione dell'istanza. Questo qualificatore può essere usato insieme al qualificatore WriteAtCreate . Il valore predefinito è FAL edizione Standard.
WriteAtUpdate
Tipo di dati: booleano
Si applica a: proprietà
Indica se la proprietà è scrivibile in fase di aggiornamento dell'istanza. Questo qualificatore può essere usato insieme al qualificatore WriteAtCreate . Il valore predefinito è FAL edizione Standard.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista |
Server minimo supportato |
Windows Server 2008 |