CryptCATAdminEnumCatalogFromHash 函式 (mscat.h)

[ CryptCATAdminEnumCatalogFromHash 函式可用於需求一節中指定的操作系統。 後續版本可能會變更或無法使用。]

CryptCATAdminEnumCatalogFromHash 函式會列舉包含指定哈希的目錄。 哈希通常是從 CryptCATAdminCalcHashFromFileHandle 函式傳回。 在最後呼叫此函式之後,呼叫 CryptCATAdminReleaseCatalogContext 以釋放配置的記憶體。

語法

HCATINFO CryptCATAdminEnumCatalogFromHash(
  [in] HCATADMIN hCatAdmin,
  [in] BYTE      *pbHash,
  [in] DWORD     cbHash,
  [in] DWORD     dwFlags,
  [in] HCATINFO  *phPrevCatInfo
);

參數

[in] hCatAdmin

先前由 CryptCATAdminAcquireContext 函式指派之目錄管理員內容的句柄。

[in] pbHash

緩衝區的指標,其中包含藉由呼叫 CryptCATAdminCalcHashFromFileHandle 所擷取的哈希。

[in] cbHash

配置給 pbHash 之緩衝區中的位元元組數目。

[in] dwFlags

此參數保留供日後使用,且必須設定為零。

[in] phPrevCatInfo

前一個目錄內容或 NULL 句柄的指標。 若要取得包含哈希的第一個目錄,或啟動所有目錄的列舉,請傳遞此參數的 NULL 。 若要繼續列舉,請傳遞先前呼叫的傳回值,直到找不到更多目錄為止。

傳回值

傳回值是目錄內容的句柄,如果沒有其他要列舉的目錄,則為 NULL

注意: HCATINFO 類型只是 HANDLE 的 typedef,可讓您輕鬆地在錯誤的內容中使用 HCATINFO。 特別是,這與 CryptCATOpen 傳回的 HANDLE 不同,即使編譯程式不會阻止您在預期目錄句柄的任何函式中使用 HCATINFO。 若要從此函式取得目錄句柄,請先呼叫 CryptCATCatalogInfoFromContext 以取得目錄的檔名,然後使用該檔名呼叫 CryptCATOpen

如需擴充的錯誤資訊,請呼叫 GetLastError 函 式。 如需作業系統所提供的錯誤碼完整清單,請參閱 系統錯誤碼

注意: 函式會傳回 HCATINFO 類型的值,但這只是 HANDLE 的 typedef。 因此,呼叫需要不同 HANDLE 的函式時,很容易不小心使用 HCATINFO。 特別是,這與 CryptCATOpen 傳回的 HANDLE 不同,即使編譯程式不會阻止您在預期目錄句柄的任何函式中使用 HCATINFO

若要從此函式取得目錄句柄,請先呼叫 CryptCATCatalogInfoFromContext 以取得目錄的檔名,然後使用該檔名呼叫 CryptCATOpen 以開啟目錄。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 mscat.h
程式庫 Wintrust.lib
Dll Wintrust.dll