ldap_open函式 (winldap.h)
[ldap_open 可用於需求一節中指定的作業系統;不過,不建議使用。 請改用 ldap_init。]
ldap_open函式會建立並初始化連線區塊,然後開啟與 LDAP 伺服器的連線。
語法
WINLDAPAPI LDAP *LDAPAPI ldap_open(
[in] PSTR HostName,
[in] ULONG PortNumber
);
參數
[in] HostName
Null 終止字串的指標。 功能變數名稱、主機名稱清單,或代表 LDAP 伺服器主機 IP 位址的虛線字串。 使用單一空格來分隔清單中的主機名稱。 清單中的每個主機名稱後面可能會加上端口號碼。 選擇性埠號碼與主機本身分隔,冒號 (:) 。 LDAP 執行時間會依列出的順序嘗試與主機連線,並在成功連線時停止。 請注意,在返回呼叫端之前 ,只有ldap_open 嘗試進行連線。 函 式ldap_init 不會連線到 LDAP 伺服器。
[in] PortNumber
包含要連線的 TCP 埠號碼。 您可以藉由提供常數 LDAP_PORT來取得預設 LDAP 埠 389。 如果主機名稱包含埠號碼,則會忽略此參數。
傳回值
如果函式成功,它會以 LDAP 資料結構的指標形式傳回會話控制碼。 不再需要時,請釋放會話控制碼,並呼叫 ldap_unbind。
如果函式失敗,則會傳回 Null。 使用 LdapGetLastError 函 式來擷取錯誤碼。
備註
呼叫 ldap_open 以建立 LDAP 伺服器的連線區塊。 HostName可以是Null,在此情況下,執行時間會嘗試尋找預設 LDAP 伺服器。 主機名稱會依照列出的順序嘗試,並停止並成功連線。 對於 Active Directory 伺服器, DsGetDcName 函式可用來取得伺服器的名稱,然後可以當做 HostName 參數傳遞,而不是使用 Null。
如果 HostName 設定為 Null 或功能變數名稱,則會自動重新連線。 如果連線的 DC 因連線存留期的某些原因而停止運作,LDAP 會自動重新連線到指定網域中的另一個 DC。 此行為可以使用 預設開啟的 LDAP_OPT_AUTO_RECONNECT 會話選項來關閉或開啟。
當您使用 LDAP_OPT_HOST_NAME時,預設 LDAP 伺服器是 Microsoft 特定選項。 此選項會指定預設 LDAP 伺服器的主機名稱,並分別傳回 Unicode 或 ANSI 中的伺服器主機名稱,視 使用ldap_get_optionW 或 ldap_get_optionA而定。
如果通用類別目錄埠號碼傳遞至 ldap_open 做為其中一個引數,則針對該埠號碼傳遞的 HostName 必須是樹系的名稱, DsGetDcName () 的基礎呼叫才能正確尋找企業中的 GC。
ldap_open函式會配置 LDAP 資料結構來維護會話的狀態資料,並傳回此結構的控制碼。 將此控制碼傳遞至會話期間後續的 LDAP 函式呼叫。
多執行緒: 對ldap_open 的呼叫是安全線程的。
規格需求
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | winldap.h |
程式庫 | Wldap32.lib |
Dll | Wldap32.dll |