C++ 인터페이스 메서드의 반환 값은 항상 HRESULT 형식입니다. 이 값을 확인하여 성공 또는 실패를 확인할 수 있습니다. "output" 매개 변수를 사용하면 메서드 또는 속성 호출 중에 변수에 값을 할당할 수 있습니다. 다음 예제에서는 공급자를 열거하는 C++ 메서드 호출을 보여 줍니다.
UINT ucEnumProvIndex = 0;
BSTR bstrProvider = NULL;
HRESULT hr;
// pEnroll is previously instantiated CEnroll interface pointer
hr = pEnroll->enumProviders(ucEnumProvIndex, 0, &bstrProvider);
앞의 코드 조각에서 성공 또는 실패는 "hr" 변수로 반환됩니다. 호출에 성공하면 hr이 S_OK 설정되고 변수 bstrProvider에는 열거된 공급자의 이름이 포함됩니다.
속성 값을 검색하는 C++ 호출은 다음과 같습니다.
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).
속성 값을 설정하는 C++ 호출은 다음과 같습니다.
// bstrNewName previously set to a valid store name
hr = pEnroll->put_CAStoreName( bstrNewName );