共用方式為


EnumerateSecurityPackagesA 函式 (sspi.h)

EnumerateSecurityPackages 函式會傳回 SecPkgInfo 結構數位,以提供用戶端可用之 安全性 套件的相關信息。

語法

SECURITY_STATUS SEC_ENTRY EnumerateSecurityPackagesA(
  [in] unsigned long *pcPackages,
  [in] PSecPkgInfoA  *ppPackageInfo
);

參數

[in] pcPackages

ULONG 變數的指標,可接收系統上可用的套件數目。 這包括已載入的套件,以及隨選可用的套件。

[in] ppPackageInfo

變數的指標,會接收 SecPkgInfo 結構的陣列指標。 每個結構都包含來自 安全性支援提供者 (SSP) 的資訊,其中描述該 SSP 內可用之安全性套件的功能。

當您完成使用陣列時,呼叫freeContextBuffer 函式 釋放記憶體。

傳回值

如果函式成功,函式會傳回 SEC_E_OK

如果函式失敗,則會傳回非零的錯誤碼。 可能的值包括但不限於下表中的值。

傳回碼/值 描述
SEC_E_INSUFFICIENT_MEMORY
0x80090300L
記憶體不足,無法配置一或多個緩衝區。
SEC_E_INVALID_HANDLE
0x80090301L
指定了無效的句柄。
SEC_E_SECPKG_NOT_FOUND
0x80090305L
找不到指定的封裝。

言論

呼叫端可以使用 SecPkgInfo 結構的 Name 成員,在呼叫 AcquireCredentialsHandle (General) 函式中指定安全性套件。

注意

sspi.h 標頭會根據 UNICODE 預處理器常數的定義,將 EnumerateSecurityPackages 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平臺 窗戶
標頭 sspi.h (include Security.h)
連結庫 Secur32.lib
DLL SspiCli.dll

另請參閱

AcquireCredentialsHandle (一般)

FreeContextBuffer

SSPI 函式

SecPkgInfo