PropVariantGetDoubleElem-Funktion (propvarutil.h)
Extrahiert ein einzelnes Double-Element aus einer PROPVARIANT-Struktur vom Typ VT_R8
, VT_VECTOR | VT_R8
oder VT_ARRAY | VT_R8
.
Syntax
PSSTDAPI PropVariantGetDoubleElem(
[in] REFPROPVARIANT propvar,
[in] ULONG iElem,
[out] DOUBLE *pnVal
);
Parameter
[in] propvar
Typ: REFPROPVARIANT
Verweis auf die PROPVARIANT-Quellstruktur .
[in] iElem
Typ: ULONG
Gibt den Vektor- oder Arrayindex an; Andernfalls muss iElem 0 sein.
[out] pnVal
Typ: DOUBLE*
Wenn diese Funktion zurückgibt, enthält den extrahierten Double-Wert.
Rückgabewert
Typ: HRESULT
Wenn diese Funktion erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Wenn die PROPVARIANT-Quelle den Typ VT_R8
aufweist, muss iElem 0 sein. Andernfalls muss iElem kleiner als die Anzahl der Elemente im Vektor oder Array sein. Sie können PropVariantGetElementCount verwenden, um die Anzahl der Elemente im Vektor oder Array abzurufen.
Im folgenden Beispiel wird diese Funktion verwendet, um die Werte in einer PROPVARIANT-Struktur zu durchlaufen.
Beispiele
// PROPVARIANT propvar;
// assume propvar is initialized and valid
if ((propvar.vt & VT_TYPEMASK) == VT_R8)
{
UINT cElem = PropVariantGetElementCount(propvar);
HRESULT hr = <mark type="const">S_OK</mark>;
for (UINT iElem = 0; SUCCEEDED(hr) && iElem < cElem; iElem ++)
{
DOUBLE nValue;
hr = PropVariantGetDoubleElem(propvar, iElem, &nValue);
if (SUCCEEDED(hr))
{
// nValue is valid now
}
}
}
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP mit SP2, Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 mit SP1 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | propvarutil.h |
Bibliothek | Propsys.lib |
DLL | Propsys.dll (Version 6.0 oder höher) |
Verteilbare Komponente | Windows Desktop Search (WDS) 3.0 |