用 C++ 实例化的证书注册控件
以下 C++ 示例初始化 COM,创建 证书注册控件的实例,使用证书注册控件,并释放资源。
C++ 中的示例
以下示例创建 证书注册控件 的实例,并显示 MyStoreName 属性的值。 此示例使用 ICEnroll4 接口。
#include <windows.h>
#include <stdio.h>
#include <xenroll.h>
// Copyright (C) Microsoft. All rights reserved.
HRESULT __cdecl main(void)
{
HRESULT hr = 0;
ICEnroll4 *pEnroll = NULL;
BSTR bstrStoreName = NULL;
// Initialize COM.
hr = CoInitializeEx( NULL, COINIT_APARTMENTTHREADED );
if ( FAILED( hr ) )
{
printf("Failed CoInitializeEx - [0x%x]\n", hr);
exit(hr);
}
// Create an instance of the object.
hr = CoCreateInstance( __uuidof(CEnroll),
NULL,
CLSCTX_INPROC_SERVER,
__uuidof(ICEnroll4),
(void **)&pEnroll);
if ( FAILED( hr ) )
{
printf("Failed CoCreateInstance - pEnroll [0x%x]\n", hr);
exit(hr);
}
hr = pEnroll->get_MyStoreName(&bstrStoreName);
if (SUCCEEDED(hr))
{
printf("The value of MyStoreName is %ws\n", bstrStoreName);
}
else
{
printf("pEnroll->GetMyStoreName failed: 0x%x\n", hr);
}
pEnroll->Release();
SysFreeString(bstrStoreName);
CoUninitialize();
return hr;
}