IObjectId::GetAlgorithmName 方法 (certenroll.h)
GetAlgorithmName 方法會擷取與演算法物件標識符相關聯的顯示名稱, (OID) 。
語法
HRESULT GetAlgorithmName(
[in] ObjectIdGroupId GroupId,
[in] ObjectIdPublicKeyFlags KeyFlags,
[out] BSTR *pstrAlgorithmName
);
參數
[in] GroupId
ObjectIdGroupId 列舉值,指定要搜尋的 OID 群組。 這可以是下列任何演算法群組:
- XCN_CRYPT_HASH_ALG_OID_GROUP_ID
- XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID
- XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID
- XCN_CRYPT_SIGN_ALG_OID_GROUP_ID
- XCN_CRYPT_RDN_ATTR_OID_GROUP_ID
- XCN_CRYPT_EXT_OR_ATTR_OID_GROUP_ID
- XCN_CRYPT_ENHKEY_USAGE_OID_GROUP_ID
- XCN_CRYPT_POLICY_OID_GROUP_ID
- XCN_CRYPT_TEMPLATE_OID_GROUP_ID
[in] KeyFlags
ObjectIdPublicKeyFlags 列舉值,指定是否要搜尋簽署或加密演算法。 這個值可以是下列其中一個值:
- XCN_CRYPT_OID_INFO_PUBKEY_ANY
- XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
- XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
[out] pstrAlgorithmName
包含名稱的 BSTR 變數指標。
傳回值
如果函式成功,函式會傳回 S_OK。
如果函式失敗,它會傳回 HRESULT 值,指出錯誤。 可能的值包括 (但不限於) 下表中的這些值。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值。
傳回碼/值 | Description |
---|---|
|
包含演算法名稱的字串是空的。 |
|
找不到演算法名稱。 您必須先呼叫 InitializeFromAlgorithmName ,才能呼叫 GetAlgorithmName。 |
備註
您可以使用 XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID 常數來建立 GroupId 參數值,以考慮可由可變位長度識別之演算法的密鑰大小。 例如,若要從 192 位 AES 演算法初始化 IObjectId 物件,請為 strAlgorithmName 參數指定 “AES”,將長度向左移 16,並在位長度和 XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID上執行位 OR 組合。
如果您將 GroupId 參數設定為 XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID 以外的任何參數,請為 KeyFlags 參數指定XCN_CRYPT_OID_INFO_PUBKEY_ANY。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | certenroll.h |
Dll | CertEnroll.dll |