共用方式為


IX509Enrollment::CreateRequest 方法 (certenroll.h)

CreateRequest 方法會擷取編碼的憑證要求。 憑證要求包含在位元組陣列中,使用 可辨別編碼規則 (DER) 編碼,如抽象語法表示法一 (ASN.1) 標準所定義。 DER 編碼位元組陣組是以純二進位序列或 Unicode 編碼的字串表示。 此方法已啟用 Web。

語法

HRESULT CreateRequest(
  [in]  EncodingType Encoding,
  [out] BSTR         *pValue
);

參數

[in] Encoding

EncodingType 列舉值,指定套用至 DER 編碼要求的 Unicode 編碼類型。 預設值為 XCN_CRYPT_STRING_BASE64

[out] pValue

包含 DER 編碼要求的 BSTR 變數指標。

傳回值

如果函式成功,函式會傳回 S_OK

如果函式失敗,它會傳回 HRESULT 值,指出錯誤。 可能的值包括 (但不限於) 下表中的這些值。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值

傳回碼/值 Description
CERTSRV_E_PROPERTY_EMPTY
找不到憑證要求。
OLE_E_BLANK
註冊物件尚未初始化。

備註

CreateRequest 方法會視需要呼叫 Encode 方法,以從相關聯的要求物件編碼原始數據。

這個方法會使用初始化期間提供的資訊和其他已指定的屬性、建立虛擬憑證,並將它放在要求存放區中。 方法也會視需要建立金鑰組。 根據您初始化註冊物件的方式,以及您設定的屬性而定,可能不需要建立密鑰組。 例如,如果您要使用現有的密鑰來更新憑證,或如果與憑證要求相關聯的 IX509PrivateKey 物件代表現有的密鑰,這個方法就不會建立新的密鑰組。

如果涉及智慧卡,此方法會將外部屬性編碼為延伸模組、將它們包含在虛擬憑證中,並將虛擬憑證寫入智慧卡密鑰容器。 智慧卡登入憑證會編碼至要求存放區,而不是個人存放區。

呼叫 CreateRequest 方法之前,您必須呼叫下列其中一種方法來初始化 IX509Enrollment 物件。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 certenroll.h
Dll CertEnroll.dll

另請參閱

IX509CertificateRequest

IX509Enrollment