Rückgabewerte der Methode
Der Rückgabewert für C++-Schnittstellenmethoden ist immer vom Typ HRESULT; Dieser Wert kann überprüft werden, um den Erfolg oder Fehler zu ermitteln. Die Verwendung von "output"-Parametern ermöglicht das Zuweisen von Werten zu Variablen während des Methoden- oder Eigenschaftenaufrufs. Das folgende Beispiel zeigt einen C++-Methodenaufruf zum Aufzählen von Anbietern.
UINT ucEnumProvIndex = 0;
BSTR bstrProvider = NULL;
HRESULT hr;
// pEnroll is previously instantiated CEnroll interface pointer
hr = pEnroll->enumProviders(ucEnumProvIndex, 0, &bstrProvider);
Im vorangehenden Codefragment wird der Erfolg oder Fehler an die Variable "hr" zurückgegeben. Wenn der Aufruf erfolgreich war, wird hr auf S OK festgelegt, und die Variable bstrProvider enthält den Namen des _ aufzählten Anbieters.
Ein C++-Aufruf zum Abrufen eines Eigenschaftswerts lautet wie folgt.
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).
Ein C++-Aufruf zum Festlegen eines Eigenschaftswerts lautet wie folgt.
// bstrNewName previously set to a valid store name
hr = pEnroll->put_CAStoreName( bstrNewName );