IAlternativeName::InitializeFromString 方法 (certenroll.h)

InitializeFromString 方法从包含电子邮件地址、域名系统 (DNS) 名称、URL、注册对象标识符 (OID) 或用户主体名称 (UPN) 的字符串初始化对象。

语法

HRESULT InitializeFromString(
  [in] AlternativeNameType Type,
  [in] BSTR                strValue
);

参数

[in] Type

一个 AlternativeNameType 枚举值,该值标识由 strValue 参数中包含的输入字符串表示的名称类型。 这必须是以下值之一。

Value 含义
XCN_CERT_ALT_NAME_RFC822_NAME
名称是电子邮件地址。
XCN_CERT_ALT_NAME_DNS_NAME
该名称是 DNS 名称。
XCN_CERT_ALT_NAME_URL
名称为 URL。
XCN_CERT_ALT_NAME_REGISTERED_ID
该名称是已注册的 OID。
XCN_CERT_ALT_NAME_USER_PRINCIPLE_NAME
名称为 UPN。

[in] strValue

包含名称的 BSTR 变量。

返回值

如果函数成功,该函数将返回 S_OK

如果函数失败,它将返回一个 指示错误的 HRESULT 值。 有关常见错误代码的列表,请参阅 通用 HRESULT 值

注解

如果使用此方法指定 UPN,则 UPN 与 OID) XCN_OID_NT_PRINCIPAL_NAME (1.3.6.1.4.1.1.311.20.2.3 相关联,并且可辨别编码规则 (DER) 编码。 可以调用 RawData 属性来检索编码的字节数组。 可以通过调用 ObjectId 属性来检索 OID。

如果使用此方法指定以下任何名称类型,该方法将返回 E_INVALIDARG

Value 说明
XCN_CERT_ALT_NAME_UNKNOWN 未标识名称类型。
XCN_CERT_ALT_NAME_OTHER_NAME 名称由 OID 和字节数组组成。
XCN_CERT_ALT_NAME_DIRECTORY_NAME 该名称是 X.500 目录名称。
XCN_CERT_ALT_NAME_IP_ADDRESS 该名称是 IP 地址。
XCN_CERT_ALT_NAME_GUID 名称为 GUID。
 

可以使用 InitializeFromOtherName 方法指定 OID 和相应的名称字符串,也可以使用 InitializeFromRawData 方法指定 GUID、IP 地址或 X.500 目录名称。

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 certenroll.h
DLL CertEnroll.dll

另请参阅

IAlternativeName

IAlternativeNames

IX509ExtensionAlternativeNames