PropVariantToBooleanWithDefault-Funktion (propvarutil.h)
Extrahiert den Wert der booleschen Eigenschaft einer PROPVARIANT-Struktur . Wenn kein Wert vorhanden ist, wird der angegebene Standardwert zurückgegeben.
Syntax
PSSTDAPI_(BOOL) PropVariantToBooleanWithDefault(
[in] REFPROPVARIANT propvarIn,
[in] BOOL fDefault
);
Parameter
[in] propvarIn
Typ: REFPROPVARIANT
Verweis auf eine PROPVARIANT-Quellstruktur .
[in] fDefault
Typ: BOOL
Gibt den Standardwert für die Eigenschaft an, wenn derzeit kein Wert vorhanden ist.
Rückgabewert
Typ: BOOL
Der extrahierte boolesche Wert oder der Standardwert.
Hinweise
Diese Hilfsfunktion wird an Stellen verwendet, an denen die aufrufende Anwendung erwartet, dass eine PROPVARIANT einen booleschen Wert enthält, und wenn dies nicht der Fall ist, einen Standardwert verwenden möchte. Für instance kann eine Anwendung, die Werte aus einem Eigenschaftenspeicher abruft, dies verwenden, um den booleschen Wert für boolesche Eigenschaften sicher zu extrahieren.
Wenn die Propvariant-Quelleden Typ VT_BOOL hat, extrahiert diese Hilfsfunktion den booleschen Wert. Andernfalls wird versucht, den Wert in der PROPVARIANT-Struktur in einen booleschen Wert zu konvertieren. Wenn die PROPVARIANT-Quelleden Typ VT_EMPTY hat oder eine Konvertierung nicht möglich ist, gibt PropVariantToBooleanWithDefault den von fDefault bereitgestellten Standardwert zurück. Eine Liste möglicher Konvertierungen finden Sie unter PropVariantChangeType .
Beispiele
Im folgenden Beispiel, das als Teil eines größeren Programms eingeschlossen werden soll, wird veranschaulicht, wie PropVariantToBooleanWithDefault verwendet wird, um auf einen booleschen Wert in einem PROPVARIANT zuzugreifen.
// IPropertyStore *ppropstore;
// Assume the variable ppropstore is initialized and valid.
PROPVARIANT propvar = {0};
HRESULT hr = ppropstore->GetValue(PKEY_IsRead, &propvar);
if (SUCCEEDED(hr))
{
// PKEY_IsRead is expected to produce a VT_BOOL or VT_EMPTY value.
// The application developer decided to treat VT_EMPTY or invalid values as TRUE
BOOL fShared = PropVariantToBooleanWithDefault(propvar, TRUE);
// fShared is now valid.
PropVariantClear(&propvar);
}
Anforderungen
Anforderung | Wert |
---|---|
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 |