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 函式數據表:

您必須呼叫 CryptRegisterDefaultOIDFunction ,在 Windows 登錄中註冊提供者。

規格需求

需求
最低支援的用戶端 Windows 8 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2012 [僅限傳統型應用程式]
目標平台 Windows
標頭 wincrypt.h

另請參閱

CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE

PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH