IX509AttributeClientId::InitializeEncode 方法 (certenroll.h)
InitializeEncode 方法會從提交憑證要求的使用者、用戶端計算機和應用程式相關信息,初始化 屬性。
語法
HRESULT InitializeEncode(
[in] RequestClientInfoClientId ClientId,
[in, optional] BSTR strMachineDnsName,
[in, optional] BSTR strUserSamName,
[in, optional] BSTR strProcessName
);
參數
[in] ClientId
RequestClientInfoClientId 列舉值,識別建立要求的應用程式類型。 範例包括自動註冊服務、命令行要求工具和自定義要求應用程式。
[in, optional] strMachineDnsName
BSTR 變數,其中包含功能變數名稱系統 (DNS) 建立要求的電腦名稱,例如 ComputerName.contoso.com
。 如果您未提供名稱,方法會呼叫 GetComputerNameEx 函式。 如果找不到名稱,方法就會失敗。
[in, optional] strUserSamName
BSTR 變數,其中包含網域名稱\UserName 格式的使用者 (SAM) 名稱。 如果您未提供名稱,方法會呼叫 GetUserNameEx 函式。 如果找不到名稱,方法就會失敗。
[in, optional] strProcessName
BSTR 變數,其中包含建立憑證要求的應用程式名稱。 如果您未提供名稱,方法會呼叫 GetCommandLine 函式並剖析命令行。 如果找不到名稱,方法就會失敗。
傳回值
如果函式成功,函式會傳回 S_OK。
如果函式失敗,它會傳回 HRESULT 值,指出錯誤。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值。
備註
此屬性 (OID) 的物件識別碼 XCN_OID_REQUEST_CLIENT_INFO ( 1.3.6.1.4.1.311.21.20) 。 如需詳細資訊,請參閱 CERTENROLL_OBJECTID。 屬性會建立為抽象語法表示法一 (ASN.1) 結構,使用 可辨別編碼規則 (DER) 進行編碼。
您必須先呼叫 InitializeEncode 或 InitializeDecode ,才能使用 IX509AttributeClientId 物件。 這兩種方法彼此互補。 InitializeEncode 方法可讓您從原始數據建構編碼的 ASN.1 結構,InitializeDecode 方法可讓您從編碼的 ASN.1 結構初始化原始數據。 您可以呼叫下列屬性來擷取原始資料:
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | certenroll.h |
Dll | CertEnroll.dll |