DSBROWSEINFOA 結構 (dsclient.h)

DSBROWSEINFO結構會與DsBrowseForContainer函式搭配使用,以提供和傳回 Active Directory 容器瀏覽器對話方塊的相關資料。

語法

typedef struct {
  DWORD       cbStruct;
  HWND        hwndOwner;
  LPCSTR      pszCaption;
  LPCSTR      pszTitle;
  LPCWSTR     pszRoot;
  LPWSTR      pszPath;
  ULONG       cchPath;
  DWORD       dwFlags;
  BFFCALLBACK pfnCallback;
  LPARAM      lParam;
  DWORD       dwReturnFormat;
  LPCWSTR     pUserName;
  LPCWSTR     pPassword;
  LPWSTR      pszObjectClass;
  ULONG       cchObjectClass;
} DSBROWSEINFOA, *PDSBROWSEINFOA;

成員

cbStruct

包含 DSBROWSEINFO 結構的大小,以位元組為單位。 DsBrowseForContainer函式會使用此函式進行版本設定。

hwndOwner

做為容器瀏覽器對話方塊父代之視窗的控制碼。

pszCaption

Null 終止字串的指標,其中包含對話方塊的標題。 如果這個成員是Null,則會使用預設標題。

pszTitle

Null 終止字串的指標,其中包含樹狀結構控制項上方對話方塊中要顯示的其他文字。 如果此成員為 Null,則不會顯示其他文字。

pszRoot

Null 終止的 Unicode 字串指標,其中包含放置於對話方塊根目錄之容器的 ADsPath。 使用者無法使用對話方塊巡覽至此層級上方。

pszPath

Null 終止的 Unicode 字串指標,該字串會接收對話方塊中所選取容器的 ADsPath。 即使 cchPath 不夠大,以保留整個路徑,此字串一律會以 Null 終止。 如果 dwFlags 包含 DSBI_EXPANDONOPEN 旗標,這個成員會包含應該在對話方塊中一開始選取之容器的 ADsPath。

cchPath

包含pszPath緩衝區的WCHAR字元大小。

dwFlags

包含一組旗標,可定義對話方塊的行為。 這可以是零或下列一或多個值的組合。

DSBI_NOBUTTONS (1 (0x1) )

+- 按鈕不會顯示在對話方塊中。

DSBI_NOLINES (2 (0x2) )

不會顯示連接對話方塊中物件的行。

DSBI_NOLINESATROOT (4 (0x4) )

不會顯示根物件上方的行和按鈕。

DSBI_CHECKBOXES (256 (0x100) )

導致將核取方塊放在樹狀結構中的每個專案旁邊。 使用者可以使用滑鼠來選取並清除此核取方塊。 這目前有有限的使用方式,因為沒有辦法設定或取得專案的檢查狀態。

DSBI_NOROOT (65536 (0x10000) )

不會顯示 pszRoot所指定的根物件,而且根目錄的直接子物件會顯示在樹狀結構的根目錄。 如果 pszRootNull 或此成員包含 DSBI_ENTIREDIRECTORY,則此旗標沒有任何作用。

DSBI_INCLUDEHIDDEN (131072 (0x20000) )

在對話方塊中加入隱藏的物件。

DSBI_EXPANDONOPEN (262144 (0x40000) )

當對話方塊開啟時,將會顯示並選取 pszPath 中指定的容器。

DSBI_ENTIREDIRECTORY (589824 (0x90000) )

包含 pszRoot 中指定的伺服器的所有受信任網域,或根據預設,使用者登入的網域。

DSBI_RETURN_FORMAT (1048576 (0x100000) )

表示 dwReturnFormat 成員有效。 如果未設定此旗標,路徑格式預設為 X.500。

DSBI_HASCREDENTIALS (2097152 (0x200000) )

pUserNamepPassword 會用於存取認證。 否則,如果這個成員不包含 DSBI_SIMPLEAUTHENTICATE,對話方塊會使用呼叫執行緒的安全性內容。

DSBI_IGNORETREATASLEAF (4194304 (0x400000) )

判斷物件是否顯示在對話方塊中時, 會忽略 treatAsLeaf 顯示規範。

DSBI_SIMPLEAUTHENTICATE (8388608 (0x800000) )

表示呼叫 ADsOpenObject時不需要安全驗證。

DSBI_RETURNOBJECTCLASS (16777216 (0x1000000) )

表示 pszObjectClasscchObjectClass 有效且應該填滿。

DSBI_DONTSIGNSEAL (33554432 (0x2000000) )

表示與目錄服務通訊時,不會使用簽署和密封。

pfnCallback

從容器瀏覽器對話方塊接收通知的應用程式定義 BFFCallBack 回呼函式指標。 如果未使用這個成員,請將這個成員設定為 Null

lParam

包含所有對 pfnCallback呼叫中傳遞為lpData參數的應用程式定義 32 位值。 如果 pfnCallbackNull,則會忽略此成員。

dwReturnFormat

包含其中一個 ADS_FORMAT_ENUM 值,指定 pszPath 中所傳回 ADSI 路徑接受的格式。

pUserName

Unicode 字串的指標,其中包含用於認證的使用者名稱。 如果 dwFlags 未設定 DSBI_HASCREDENTIALS 旗標,則會忽略此成員。 如果此成員為 Null,則會使用目前登入的使用者名稱。

pPassword

Unicode 字串的指標,其中包含用於認證的密碼。 如果 dwFlags 未設定 DSBI_HASCREDENTIALS 旗標,則會忽略此成員。 如果此成員為 Null,則會使用目前登入使用者的密碼。

pszObjectClass

接收所選取類別字串之 Unicode 字串緩衝區的指標。 如果 dwFlags 未設定 DSBI_RETURNOBJECTCLASS 旗標,則會忽略此成員。

cchObjectClass

包含pszObjectClass緩衝區的WCHAR字元大小。

備註

注意

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

需求

   
最低支援的用戶端 Windows Vista
最低支援的伺服器 Windows Server 2008
標頭 dsclient.h

另請參閱

ADS_FORMAT_ENUM

ADsOpenObject

BFFCallBack

DsBrowseForContainer