方法返回值
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 );