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’attribuer 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 les 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é à la variable « hr ». Si l’appel a réussi, hr sera défini sur S_OK et la variable bstrProvider contiendra le nom du fournisseur énuméré.

Un appel C++ pour récupérer une valeur de propriété serait le suivant.

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é serait le suivant.

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