Metodo CFrameworkQuery::GetValuesForProp(LPCWSTR,CHStringArray&) (frquery.h)

[La classe CFrameworkQuery fa parte di WMI Provider Framework, che viene ora considerata in stato finale e non saranno disponibili ulteriori sviluppi, miglioramenti o aggiornamenti per problemi non correlati alla sicurezza che interessano queste librerie. Le API MI devono essere usate per tutti i nuovi sviluppi.

Il metodo GetValuesForProp restituisce tutti i valori per una determinata proprietà generata da tale proprietà così come viene visualizzata all'interno della query.

Ad esempio, una chiamata a GetValuesForProp(L"Name", sa) restituisce la matrice sa, che contiene tutti i valori di "Name" che richiedono l'invio di istanze per soddisfare la query. Se sa contiene {"a","b"}, tutte le istanze in cui "Name=a" e tutte le istanze in cui "Name=b" devono essere restituite per soddisfare completamente la query.

Se i vincoli per "Name" non sono sufficientemente limitati, viene restituita una matrice sa vuota.

Sintassi

HRESULT GetValuesForProp(
  LPCWSTR         wszPropName,
  CHStringArray & achNames
);

Parametri

wszPropName

Matrice di valori per la proprietà specificata da wszPropName.

achNames

Nome della proprietà di destinazione.

Valore restituito

Questo metodo restituisce WBEM_S_NO_ERROR in caso di esito positivo e WBEM_E_FAILED o qualsiasi altro codice di errore HRESULT in caso di errore.

Commenti

Dato un nome di proprietà, questo metodo restituisce tutti i valori dei risultati in un contenitore CHStringArray o vector. Il contenitore vettoriale contiene _bstr_t oggetti che contengono i valori dei risultati.

L'elenco seguente, ad esempio, elenca i valori restituiti da GetValuesForProp per un'ampia gamma di query quando viene chiamato con wszPropName impostato su "Drive".

Query Valore restituito Risultato

SELECT * FROMWin32_Directory

DOVE Unità = "C:"

WBEM_S_NO_ERROR C:

SELECT * FROMWin32_Directory

DOVE Unità = "C:" OR FileSize = 256

WBEM_S_NO_ERROR Nessun risultato; aszNames è vuoto.

SELECT * FROMWin32_Directory

DOVE Drive = "C:" OR Drive = "D:"

WBEM_S_NO_ERROR C:, D:

SELECT * FROMWin32_Directory

DOVE Unità <> "C:"

WBEM_S_NO_ERROR Nessun risultato; aszNames è vuoto.

SELECT * FROMWin32_Directory

WHEREPath = "\DOS"

WBEM_S_NO_ERROR Nessun risultato; aszNames è vuoto.
 

Il metodo GetValuesForProp supporta solo i tipi stringa. Ad esempio, la query seguente, seguita da una chiamata a GetValuesForProp("PropInt", values), restituisce WBEM_E_INVALID_QUERY mentre GetValuesForProp("PropStr", values) restituisce S_OK.

SELECT * FROM Test WHERE PropInt = 32 AND PropStr = "a"

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione frquery.h (include FwCommon.h)
Libreria FrameDyn.lib
DLL FrameDynOS.dll; FrameDyn.dll

Vedi anche

CFrameworkQuery

Provider::ExecQuery