共用方式為


CredGetTargetInfoA 函式 (wincred.h)

CredGetTargetInfo 函式會擷取具名目標電腦的所有已知目標名稱資訊。 這會在本機執行,而且不需要任何特定的許可權。 傳回的信息預期會傳遞至 CredReadDomainCredentialsCredWriteDomainCredentials 函式。 資訊不應用於任何其他用途。

嘗試向 targetName驗證時,驗證套件會計算 TargetInfo TargetInfo。 驗證套件會快取此目標資訊,使其可供 CredGetTargetInfo使用。 因此,目標資訊只能從最近嘗試驗證 TargetName

不在 LSA 進程中的驗證套件可以快取 TargetInfo,以便 稍後使用 CRED_CACHE_TARGET_INFORMATION 旗標呼叫 credReadDomainCredentials CredReadDomainCredentials,以CRED_CACHE_TARGET_INFORMATION旗標擷取 CredGetTargetInfo

語法

BOOL CredGetTargetInfoA(
  [in]  LPCSTR                          TargetName,
  [in]  DWORD                           Flags,
  [out] PCREDENTIAL_TARGET_INFORMATIONA *TargetInfo
);

參數

[in] TargetName

Null 終止字串的指標,其中包含要擷取資訊的目標計算機名稱。

[in] Flags

控制函式作業的旗標。 您可以使用下列旗標:

CRED_ALLOW_NAME_RESOLUTION

如果在 TargetName 上完成目標名稱解析,TargetName 名稱解析找不到目標資訊,以轉換為其他表單。 如果任何其他窗體存在目標資訊,則會傳回該資訊。 目前只有 DNS 名稱解析完成。

如果應用程式未直接呼叫驗證套件,這會很有用。 應用程式可以將 TargetName 傳遞至另一層軟體,以向伺服器進行驗證,而該層軟體可能會解析名稱,並將解析的名稱傳遞至驗證套件。 因此,原始 TargetName不會有目標資訊。

[out] TargetInfo

單一配置區塊緩衝區的指標,以包含目標資訊。 至少有一個 TargetInfo 傳回的成員是非 NULL。 緩衝區中包含的任何指標都是這個單一配置區塊內位置的指標。 呼叫 credFree ,必須釋放單一傳回的緩衝區。

傳回值

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

  • ERROR_NOT_FOUND

    無法使用具名伺服器的目標資訊。

言論

注意

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

要求

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

另請參閱

CredFree

CredReadDomainCredentials

CredWriteDomainCredentials

GetLastError