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。
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
| 支援的最低伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
| 目標平臺 | 窗戶 |
| Header | certenroll.h |
| DLL | CertEnroll.dll |