Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Extrahiert einen UInt64-Wert aus einer PROPVARIANT-Struktur . Wenn kein Wert extrahiert werden kann, wird ein Standardwert zugewiesen.
Syntax
PSSTDAPI PropVariantToUInt64(
[in] REFPROPVARIANT propvarIn,
[out] ULONGLONG *pullRet
);
Parameter
[in] propvarIn
Typ: REFPROPVARIANT
Verweis auf eine PROPVARIANT-Quellstruktur .
[out] pullRet
Typ: ULONGLONG*
Wenn diese Funktion zurückgibt, enthält den extrahierten Eigenschaftswert, sofern vorhanden; andernfalls 0.
Rückgabewert
Typ: HRESULT
Wenn diese Funktion erfolgreich ist, gibt sie S_OK zurück. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Diese Hilfsfunktion wird an Stellen verwendet, an denen die aufrufende Anwendung erwartet, dass eine PROPVARIANT einen ULONGLONG-Wert enthält. Für instance kann eine Anwendung, die Werte aus einem Eigenschaftenspeicher bezieht, dies verwenden, um den ULONGLONG-Wert für UInt64-Eigenschaften sicher zu extrahieren.
Wenn die Propvariant-Quelleden Typ VT_UI8 hat, extrahiert diese Hilfsfunktion den ULONGLONG-Wert . Andernfalls wird versucht, den Wert in der PROPVARIANT-Struktur in einen ULONGLONG-Wert zu konvertieren. Wenn eine Konvertierung nicht möglich ist, gibt PropVariantToUInt64 einen Fehlercode zurück und legt pullRet auf 0 fest. Eine Liste möglicher Konvertierungen finden Sie unter PropVariantChangeType . Beachten Sie, dass VT_EMPTY erfolgreich in 0 konvertiert wurde.
Beispiele
Im folgenden Beispiel, das als Teil eines größeren Programms eingeschlossen werden soll, wird veranschaulicht, wie PropVariantToUInt64 verwendet wird, um auf einen ULONGLONG-Wert in einem PROPVARIANT zuzugreifen.
// IPropertyStore *ppropstore;
// Assume variable ppropstore is initialized and valid
PROPVARIANT propvar = {0};
HRESULT hr = ppropstore->GetValue(PKEY_Size, &propvar);
if (SUCCEEDED(hr))
{
// PKEY_Size is expected to produce a VT_UI8 or VT_EMPTY value.
// PropVariantToUInt64 will convert VT_EMPTY to 0.
ULONGLONG ullSize;
hr = PropVariantToUInt64(propvar, &ullSize);
if (SUCCEEDED(hr))
{
// ullSize is now valid
}
else
{
// ullSize is always 0
}
PropVariantClear(&propvar);
}
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 |