Funzione PropVariantToGUID (propvarutil.h)
Estrae un valore GUID da una struttura PROPVARIANT .
Sintassi
PSSTDAPI PropVariantToGUID(
[in] REFPROPVARIANT propvar,
[out] GUID *pguid
);
Parametri
[in] propvar
Tipo: REFPROPVARIANT
Riferimento a una struttura PROPVARIANT di origine.
[out] pguid
Tipo: GUID*
Quando questa funzione restituisce, contiene il valore della proprietà estratta se presente.
Valore restituito
Tipo: HRESULT
Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Questa funzione helper funziona per le strutturePROPVARIANT dei tipi seguenti:
- VT_GUID
- VT_BSTR
- VT_LPWSTR
- VT_ARRAY | VT_UI1
PropVariantToGUID viene usato nelle posizioni in cui l'applicazione chiamante prevede che un PROPVARIANT contenga un singolo GUID o un valore GUID . Ad esempio, un'applicazione che ottiene valori da un archivio proprietà può usare questa opzione per estrarre in modo sicuro il valore GUID per le proprietà GUID.
Esempio
// IPropertyStore *ppropstore;
// Assume variable ppropstore is initialized and valid
PROPVARIANT propvar = {0};
HRESULT hr = ppropstore->GetValue(PKEY_Sync_HandlerCollectionID, &propvar);
if (SUCCEEDED(hr))
{
// PKEY_Sync_HandlerCollectionID is expected to produce a VT_CLSID or VT_EMPTY value.
// PropVariantToGUID will convert VT_EMPTY to a failure code.
GUID guidCollectionID;
hr = PropVariantToGUID(propvar, &guidCollectionID);
if (SUCCEEDED(hr))
{
// guidCollectionID is now valid
}
else
{
// the extraction failed
}
PropVariantClear(&propvar);
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP con SP2, Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2003 con SP1 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | propvarutil.h |
Libreria | Propsys.lib |
DLL | Propsys.dll (versione 6.0 o successiva) |
Componente ridistribuibile | Windows Desktop Search (WDS) 3.0 |