Compartilhar via


Valores retornados do método

O valor retornado para métodos de interface C++ é sempre do tipo HRESULT; esse valor pode ser verificado para determinar o êxito ou a falha. O uso de parâmetros de "saída" permite que os valores sejam atribuídos a variáveis durante o método ou a chamada de propriedade. O exemplo a seguir mostra uma chamada de método C++ para enumerar provedores.

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

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

No fragmento de código anterior, êxito ou falha é retornado à variável "hr". Se a chamada tiver sido bem-sucedida, o rh será definido como S_OK e a variável bstrProvider conterá o nome do provedor enumerado.

Uma chamada C++ para recuperar um valor de propriedade seria a seguinte.

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).

Uma chamada C++ para definir um valor de propriedade seria a seguinte.

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