Condividi tramite


Metodo CFrameworkQuery::GetValuesForProp(LPCWSTR,std.vector<_bstr_t>&) (frquery.h)

[La classe CFrameworkQuery fa parte di WMI Provider Framework che è ora considerata nello stato finale e non saranno disponibili ulteriori aggiornamenti, 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à 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 inviate nuovamente per soddisfare completamente la query.

Se i vincoli relativi a "Nome" non sono sufficientemente limitati, viene restituita una matrice sa vuota.

Sintassi

HRESULT GetValuesForProp(
  LPCWSTR               wszPropName,
  std::vector<_bstr_t>& vectorNames
);

Parametri

wszPropName

Nome della proprietà di destinazione.

vectorNames

Matrice di valori per la proprietà specificata da wszPropName.

Valore restituito

Questo metodo restituisce WBEM_S_NO_ERROR sull'esito positivo e WBEM_E_FAILED o su 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 vettore. Il contenitore vettore contiene _bstr_t oggetti che contengono i valori dei risultati.

Ad esempio, l'elenco seguente 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 * FROM Win32_Directory

WHERE Drive = "C:"

WBEM_S_NO_ERROR C:
SELECT * FROM Win32_Directory

WHERE Drive = "C:" OR FileSize = 256

WBEM_S_NO_ERROR Nessun risultato; aszNames è vuoto.
SELECT * FROM Win32_Directory

WHERE Drive = "C:" OR Drive = "D:"

WBEM_S_NO_ERROR C:, D:
SELECT * FROM Win32_Directory

WHERE Drive <> "C:"

WBEM_S_NO_ERROR Nessun risultato; aszNames è vuoto.
SELECT * FROM Win32_Directory

WHERE Path = "\DOS"

WBEM_S_NO_ERROR Nessun risultato; aszNames è vuoto.
 

Il metodo GetValuesForProp supporta solo i tipi di stringa.

La query seguente, seguita da una chiamata a GetValuesForProp("PropInt", valori), restituisce WBEM_E_INVALID_QUERY mentre GetValuesForProp("PropStr", valori) restituisce S_OK.

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

Requisiti

   
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