ICEnroll::enumContainers 方法 (xenroll.h)

[此方法在 Windows Server 2008 和 Windows Vista 中不再可用。]

enumContainers 方法检索由 ProviderName 属性指定的加密服务提供程序 (CSP) 容器的名称。 此方法首先在 ICEnroll 接口中定义。

语法

HRESULT enumContainers(
  [in]  LONG dwIndex,
  [out] BSTR *pbstr
);

参数

[in] dwIndex

指定将检索其名称的容器的序号位置。 为第一个容器指定零。

[out] pbstr

指向接收容器名称的 BSTR 变量的指针。 使用完 BSTR 后,通过调用 SysFreeString 函数来释放它。

返回值

C++

返回值为 HRESULT。 值为 S_OK 表示成功。 当没有更多项时,将返回ERROR_NO_MORE_ITEMS的值。

VB

返回值是表示容器名称的 String 变量。 如果遇到错误或没有更多项,则会引发异常。

注解

如果尚未设置 ProviderName 属性值,则使用默认值 (通常为注册表中设置的 ProviderName 的 Microsoft 基本加密提供程序) 。

将证书注册控件作为脚本控件执行时,将禁用此方法。

示例

BSTR       bstrCon = NULL;
DWORD      nCon = 0;
HRESULT    hr;

// pEnroll is previously instantiated ICEnroll interface pointer
while ( S_OK == pEnroll->enumContainers(nCon, &bstrCon) )
{
    printf("\t%d) %ws\n", nCon++, bstrCon );
    if ( bstrCon )
    {
        SysFreeString( bstrCon );
        bstrCon = NULL;
    }
}

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 xenroll.h
Library Uuid.lib
DLL Xenroll.dll

另请参阅

CEnroll

ICEnroll

ICEnroll2

ICEnroll3

ICEnroll4

ProviderName