共用方式為


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
CERTSRV_E_PROPERTY_EMPTY
找不到 ICspStatus 物件。
OLE_E_BLANK
ICspInformation 物件尚未初始化。

備註

ICspStatus 物件包含密碼編譯提供者的狀態資訊。 每個物件都會針對提供者所支援的特定演算法初始化。 如果您未在 pAlgorithm 參數中指定演算法,則會選擇與允許的作業一致的第一個支援演算法來建立 ICspStatus 物件。

規格需求

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

另請參閱

ICspInformation