PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE回呼函式 (wincrypt.h)
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE函式會初始化提供者。 您必須實作此函式作為自定義提供者的一部分。
語法
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE PfnCryptObjectLocatorProviderInitialize;
BOOL PfnCryptObjectLocatorProviderInitialize(
[in] PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH pfnFlush,
[in] LPVOID pContext,
[out] DWORD *pdwExpectedObjectCount,
[out] PCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE *ppFuncTable,
[out] void **ppPluginContext
)
{...}
參數
[in] pfnFlush
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH函式實作的指標。
[in] pContext
提供者定義的物件指標,其中包含提供者和對象的相關信息。
[out] pdwExpectedObjectCount
指定提供者預期找到的唯一物件數目。 這個值會告訴呼叫端要配置多少記憶體來儲存物件。 將此值設定為零 (0) ,以指定預設值 10,000 個物件。
[out] ppFuncTable
CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE結構,其中包含提供者所實作之函式的指標。 數據表中沒有任何指標可以是 NULL。 呼叫端不會釋放這個結構。 預期提供者會傳回未配置在堆積上的數據表。
[out] ppPluginContext
這個提供者所定義的選擇性緩衝區指標。 呼叫端不會修改緩衝區。 您的提供者可以使用數據來協助判斷要執行的動作,或維護其他資訊。 此值可能設定為 NULL。
傳回值
如果函式成功,則傳回非零 (TRUE) 。
如果函式失敗, (FALSE) 傳回零,並在 SetLastError 函式中指定適當的錯誤。 大部分的錯誤都會透過安全通道未變更傳遞,但並不保證此行為。 某些錯誤可能會對應至其他錯誤。
備註
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE函式目前只有安全通道 (安全通道) 安全性服務提供者 (SSP) 呼叫。 如果從 Windows 8 開始,加密 API (CAPI) 會在內部呼叫您的自定義提供者,您可以在 AcquireCredentialsHandle 函式的 pszPrincipal 參數中指定安全性主體的名稱。
當您實作此函式時,請記得以提供者所實作的下列函式指標填入 CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE 函式數據表:
- PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET
- PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE
- PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD
- PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE
- PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wincrypt.h |