Uso di modelli di stringa standard

Diversi consumer, ad esempio il consumer eventi script attivo o il consumer eventi della riga di comando, dispongono di proprietà stringa con il qualificatore modello . Queste proprietà usano modelli di stringa standard per costruire una stringa configurata in parte dall'istanza del consumer e in parte da un evento. La struttura di un modello di stringa standard è simile alla specifica della variabile di ambiente Microsoft Windows.

L'elenco seguente mostra alcuni esempi della lingua del modello:

  • La stringa "Qualche testo qui" produce sempre la stringa "Testo qui".
  • "%CPUUtilization%" produce sempre il valore della proprietà CPUUtilization dell'evento che viene recapitato. Se la proprietà non è una stringa, viene convertita in una stringa; Ad esempio, "90" o "TRUE".
  • "L'utilizzo della CPU di questo processore è %CPUUtilization% in questo momento" incorpora il valore della proprietà CPUUtilization dell'evento nella stringa, generando qualcosa come "L'utilizzo della CPU di questo processore è 90 in questo momento".
  • "%TargetInstance.CPUUtilization%" recupera il valore della proprietà CPUUtilization nell'istanza incorporata della proprietà TargetInstance .
  • "%%" produce un singolo segno %.
  • Se la proprietà recuperata è una matrice, l'intera matrice viene prodotta nel formato seguente: "(1.5.10.1024)". Se nella matrice è presente un solo elemento, le parentesi vengono omesse. Se non sono presenti elementi nella matrice, viene generato "()".
  • Se una proprietà è un oggetto incorporato, viene generata la rappresentazione MOF dell'oggetto (simile al metodo IWbemClassObject::GetObjectText ).
  • Se viene richiesta una proprietà di una matrice incorporata di oggetti, viene considerata come proprietà con un valore di matrice. Ad esempio: %MyEvents.TargetInstance.DriverLetter% potrebbe produrre '("C:","D:")' se MyEvents è una matrice di eventi di modifica dell'istanza incorporata.

Valori letterali stringa

Qualsiasi elemento all'interno di una coppia di virgolette viene considerato un valore letterale stringa e non verrà sostituito.

Nell'esempio seguente viene illustrata la stringa che il compilatore vede per "l'utilizzo della CPU è %CPUUtilization%".

CPU utilization is %CPUUtilization%

Questa stringa produce l'output seguente.

CPU utilization is 90

D'altra parte, la stringa "L'utilizzo della CPU è \"%CPUUtilization%\"" viene visto dal compilatore come indicato di seguito.

CPU utilization is "%CPUUtilization%"

Questa stringa produce l'output seguente, senza sostituzione di variabili.

CPU utilization is "%CPUUtilization%"

Monitoraggio e risposta agli eventi con consumer standard