CertRetrieveLogoOrBiometricInfo 函式 (wincrypt.h)
CertRetrieveLogoOrBiometricInfo函式會執行szOID_LOGOTYPE_EXT或szOID_BIOMETRIC_EXT憑證延伸模組中指定的標誌或生物特徵辨識資訊的 URL 擷取。 szOID_BIOMETRIC_EXT延伸模組 (IETF RFC 3739) 支援新增憑證持有者的簽章或圖片標記法。 szOID_LOGOTYPE_EXT延伸模組 (IETF RFC 3709) 支援在憑證中新增組織圖片標記法。
語法
BOOL CertRetrieveLogoOrBiometricInfo(
[in] PCCERT_CONTEXT pCertContext,
[in] LPCSTR lpszLogoOrBiometricType,
[in] DWORD dwRetrievalFlags,
[in] DWORD dwTimeout,
[in] DWORD dwFlags,
void *pvReserved,
[out] BYTE **ppbData,
[out] DWORD *pcbData,
[out] LPWSTR *ppwszMimeType
);
參數
[in] pCertContext
包含憑證之 CERT_CONTEXT 結構的位址。
[in] lpszLogoOrBiometricType
Null 終止的 ANSI 字串位址,其中包含 物件識別碼 (OID) 字串,可識別要擷取的資訊類型。
此參數也可能包含下列其中一個預先定義的值。
[in] dwRetrievalFlags
一組旗標,指定如何擷取資訊。 此參數會當做CryptRetrieveObjectByUrl函式中的dwRetrievalFlags傳遞。
[in] dwTimeout
等候擷取的時間上限,以毫秒為單位。
[in] dwFlags
這個參數不會使用,而且必須是零。
pvReserved
不會使用此參數,而且必須是 Null。
[out] ppbData
接收標誌類型或生物特徵辨識資料的 BYTE 指標位址。 將這個指標傳遞至 CryptMemFree 函式時,必須釋放此記憶體。
[out] pcbData
接收ppbData緩衝區中位元組數目的DWORD變數位址。
[out] ppwszMimeType
以 Null 終止之 Unicode 字串的指標位址,該字串會接收多用途網際網路郵件延伸模組 (MIME) 資料類型。 如果不需要此資訊,這個參數可以是 Null 。 將這個指標傳遞至 CryptMemFree 函式時,必須釋放此記憶體。
此位址一律會收到 生物 特徵辨識類型的 Null。 您一律必須確定此參數包含有效的記憶體位址,才能嘗試存取記憶體。
傳回值
如果成功或零,則傳回非零。
如需擴充的錯誤資訊,請呼叫 GetLastError。 GetLastError函式所傳回的可能錯誤碼包括但不限於下列各項。
傳回碼 | 描述 |
---|---|
|
計算的雜湊值不符合憑證中的雜湊值。 |
|
憑證不包含 szOID_LOGOTYPE_EXT 或 szOID_BIOMETRIC_EXT 延伸模組,或找不到指定的 lpszLogoOrBiometricType 。 |
|
一或多個參數無效。 |
|
無法從憑證延伸模組所指定的 URL 擷取任何資料。 |
|
憑證不支援必要的擴充功能。 |
|
雜湊演算法 OID 未知。 |
規格需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wincrypt.h |
程式庫 | Crypt32.lib |
Dll | Crypt32.dll |