credGetSessionTypes 函式 (wincred.h)

CredGetSessionTypes 函式會傳回目前登入會話所支援的最大持續性。 每個認證類型都會傳回個別的最大持續性。

語法

BOOL CredGetSessionTypes(
  [in]  DWORD   MaximumPersistCount,
  [out] LPDWORD MaximumPersist
);

參數

[in] MaximumPersistCount

MaximumPersist 陣列中的元素數目。 使用CRED_TYPE_MAXIMUM傳回所有目前定義的認證類型。

[out] MaximumPersist

陣列的指標,以傳回 中的持續性值。 傳入的陣列應該是 MaximumPersistCount 元素長。 傳回時,每個元素都會指定對應認證類型所支援的最大持續性。

呼叫端應該使用下列其中一個定義來為陣列制索引:

  • CRED_TYPE_GENERIC
  • CRED_TYPE_DOMAIN_PASSWORD
  • CRED_TYPE_DOMAIN_CERTIFICATE
也就是說, MaximumPersist[CRED_TYPE_GENERIC] 會指定泛型認證支援的最大持續性。

下列值可以在陣列的每個元素中傳回。

意義
CRED_PERSIST_NONE
無法儲存認證。 如果認證類型不受支援或已由原則停用,則會傳回此值。
CRED_PERSIST_SESSION
只能儲存會話特定的認證。
CRED_PERSIST_LOCAL_MACHINE
會話特定和電腦特定的認證可以儲存。

Windowsxp: 無法針對未載入設定檔的工作階段儲存此認證。

CRED_PERSIST_ENTERPRISE
任何認證都可以儲存。

Windowsxp: 無法針對未載入設定檔的工作階段儲存此認證。

傳回值

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

ERROR_NO_SUCH_LOGON_SESSION

登入會話不存在,或沒有與此登入會話相關聯的認證集。 網路登錄會話沒有相關聯的認證集。

規格需求

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