Partager via


Fonction VariantToBoolean (propvarutil.h)

Extrait la valeur d’une propriété booléenne d’une structure VARIANT . Si aucune valeur ne peut être extraite, une valeur par défaut est affectée.

Syntaxe

PSSTDAPI VariantToBoolean(
  [in]  REFVARIANT varIn,
  [out] BOOL       *pfRet
);

Paramètres

[in] varIn

Type : REFVARIANT

Référence à une structure VARIANT source.

[out] pfRet

Type : BOOL*

Lorsque cette fonction retourne, contient la valeur extraite le cas échéant ; sinon, FALSE.

Valeur retournée

Type : HRESULT

Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Cette fonction d’assistance est utilisée lorsque l’application appelante s’attend à ce qu’un VARIANT contienne une valeur booléenne. Par instance, une application qui obtient des valeurs à partir d’un dossier Shell peut utiliser cette fonction pour extraire en toute sécurité la valeur de l’une des propriétés booléennes du dossier.

Si le VARIANT source est de type VT_BOOL, cette fonction extrait la valeur BOOL .

Si le VARIANT source n’est pas de type VT_BOOL, cette fonction tente de convertir la valeur de la structure VARIANT en BOOL. Si une conversion n’est pas possible, VariantToBoolean retourne un code d’échec et définit pfRet sur FALSE. Pour obtenir la liste des conversions possibles, consultez PropVariantChangeType . Notez que VT_EMPTY est correctement converti en FALSE.

Exemples

L’exemple suivant, à inclure dans le cadre d’un programme plus grand, montre comment utiliser VariantToBoolean pour accéder à une valeur BOOL dans un VARIANT.

// VARIANT var;
// Assume variable var is initialize and valid. 
// The application expects it to hold a VT_BOOL value.
BOOL fValue;

HRESULT hr = VariantToBoolean(var, &fValue);

if (SUCCEEDED(hr))
{
    // fValue is now valid.
}
else
{
    // fValue is always FALSE.
}

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP avec SP2, Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 avec SP1 [applications de bureau uniquement]
Plateforme cible Windows
En-tête propvarutil.h
Bibliothèque Propsys.lib
DLL Propsys.dll (version 6.0 ou ultérieure)
Composant redistribuable Windows Desktop Search (WDS) 3.0

Voir aussi

InitVariantFromBoolean

PropVariantChangeType

PropVariantToBoolean

VariantToBooleanArray