ICspInformation::GetCspStatusFromOperations 方法 (certenroll.h)
GetCspStatusFromOperations 方法會為第一個支持的演算法建立 ICspStatus 物件,該演算法與指定的簽章、加密、哈希或加密作業一致。
語法
HRESULT GetCspStatusFromOperations(
[in, optional] IObjectId *pAlgorithm,
[in] AlgorithmOperationFlags Operations,
[out] ICspStatus **ppValue
);
參數
[in, optional] pAlgorithm
代表演算法 OID 的 IObjectId 介面指標。 此參數是選擇性的,可以是 NULL。
- 如果您指定 OID 並將 Operations 參數設定為XCN_NCRYPT_SIGNATURE_OPERATION,並將此旗標與 XCN_NCRYPT_EXACT_MATCH_OPERATION 或XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION合併,則會使用符合 OID 的第一個簽章演算法。
- 如果您指定 OID,但未將 Operations 參數設定為 XCN_NCRYPT_SIGNATURE_OPERATION,或您設定 XCN_NCRYPT_SIGNATURE_OPERATION 但不會將其與 XCN_NCRYPT_EXACT_MATCH_OPERATION 或 XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION合併,則會使用可用於簽署或加密的第一個演算法。
- 如果您未指定 OID,則會使用 與 Operations 參數中指定的旗標一致的第一個支持演算法。
[in] Operations
AlgorithmOperationFlags 列舉值,可識別要擷取的演算法類型。 必須指定下列其中一個值:
- XCN_NCRYPT_CIPHER_OPERATION
- XCN_NCRYPT_HASH_OPERATION
- XCN_NCRYPT_SIGNATURE_OPERATION
- XCN_NCRYPT_SECRET_AGREEMENT_OPERATION
- XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION
您可以結合上述其中一個旗標與下列其中一項來精簡搜尋特性:
- XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION
- XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION
- XCN_NCRYPT_EXACT_MATCH_OPERATION
如果您設定XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION或XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION喜好設定旗標,則也無法指定下列其中一項:
- XCN_NCRYPT_CIPHER_OPERATION
- XCN_NCRYPT_HASH_OPERATION
[out] ppValue
接收 ICspStatus 介面指標的變數位址。
傳回值
如果函式成功,函式會傳回 S_OK。
如果函式失敗,它會傳回 HRESULT 值,指出錯誤。 可能的值包括 (但不限於) 下表中的這些值。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值。
傳回碼/值 | Description |
---|---|
|
找不到 ICspStatus 物件。 |
|
ICspInformation 物件尚未初始化。 |
備註
ICspStatus 物件包含密碼編譯提供者的狀態資訊。 每個物件都會針對提供者所支援的特定演算法初始化。 如果您未在 pAlgorithm 參數中指定演算法,則會選擇與允許的作業一致的第一個支援演算法來建立 ICspStatus 物件。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | certenroll.h |
Dll | CertEnroll.dll |