共用方式為


CredEnumerateA 函式 (wincred.h)

CredEnumerate 函式會列舉用戶認證集的認證。 使用的認證集是與目前令牌之登入會話相關聯的認證集。 令牌不得停用使用者的 SID。

語法

BOOL CredEnumerateA(
  [in]  LPCSTR       Filter,
  [in]  DWORD        Flags,
  [out] DWORD        *Count,
  [out] PCREDENTIALA **Credential
);

參數

[in] Filter

null終止字串的指標,其中包含傳回認證的篩選。 只會傳回 TargetName 符合篩選條件的認證。 篩選條件會指定名稱前置詞,後面接著星號。 例如,篩選 「FRED*」 會傳回所有認證,其中包含以字串 「FRED」 開頭 TargetName

如果指定 NULL,則會傳回所有認證。

[in] Flags

此參數的值可以是下列零或多個值,結合位OR 作業。

價值 意義
CRED_ENUMERATE_ALL_CREDENTIALS
0x1
此函式會列舉用戶認證集中的所有認證。 每個認證的目標名稱會以 「namespace:attribute=target」 格式傳回。 如果已設定此旗標,且 Filter 參數未 NULL,則函式會失敗並傳回 ERROR_INVALID_FLAGS

Windows Server 2003 和 Windows XP:不支援此旗標。

[out] Count

認證 數位中傳回的認證計數。

[out] Credential

認證指標陣列的指標。 傳回的認證是單一配置的區塊。 緩衝區中包含的任何指標都是這個單一配置區塊內位置的指標。 呼叫 credFree ,必須釋放單一傳回的緩衝區。

傳回值

函式會傳回成功 TRUE,並在失敗時傳回 FALSE。 您可以呼叫 getLastError 函式 ,以取得更具體的狀態代碼。 可以傳回下列狀態代碼。

傳回碼/值 描述
ERROR_NOT_FOUND
1168 (0x490)
沒有符合指定 篩選條件的認證。
ERROR_NO_SUCH_LOGON_SESSION
1312 (0x520)
登入會話不存在,或沒有與此登入會話相關聯的認證集。 網路登入會話沒有相關聯的認證集。
ERROR_INVALID_FLAGS
1004 (0x3EC)
Flags 參數指定了無效的旗標,或為 Flags 參數指定了 CRED_ENUMERATE_ALL_CREDENTIALS,而且 Filter 參數不是 NULL

言論

注意

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

要求

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

另請參閱

CredFree

GetLastError