Partager via


Valeurs de retour de méthode

La valeur de retour pour les méthodes d’interface C++ est toujours de type HRESULT ; cette valeur peut être vérifiée pour déterminer la réussite ou l’échec. L’utilisation de paramètres de « sortie » permet d’affecter des valeurs à des variables pendant l’appel de méthode ou de propriété. L’exemple suivant montre un appel de méthode C++ pour énumérer des fournisseurs.

UINT          ucEnumProvIndex = 0;
BSTR          bstrProvider = NULL;
HRESULT       hr;

// pEnroll is previously instantiated CEnroll interface pointer
hr = pEnroll->enumProviders(ucEnumProvIndex, 0, &bstrProvider);

Dans le fragment de code précédent, la réussite ou l’échec est retournée à la variable « hr ». Si l’appel a réussi, hr est défini sur S_OK et la variable bstrProvider contient le nom du fournisseur énuméré.

Un appel C++ pour récupérer une valeur de propriété se présente comme suit.

BSTR     bstrStoreName = NULL;
HRESULT  hr;

// pEnroll is previously instantiated CEnroll interface pointer

// get the storename
hr = pEnroll->get_CAStoreName( &bstrStoreName );

// (When done using bstrStoreName, free it by calling SysFreeString).

Un appel C++ pour définir une valeur de propriété se présente comme suit.

// bstrNewName previously set to a valid store name
hr = pEnroll->put_CAStoreName( bstrNewName );