BFFCALLBACK 回呼函式 (shlobj_core.h)

BFFCallBack函式是應用程式定義的回呼函式,可從Active Directory 網域服務容器瀏覽器對話方塊接收事件通知。 呼叫DsBrowseForContainer函式時,此函式的指標會提供給DSBROWSEINFO結構的pfnCallback成員中的容器瀏覽器對話方塊。 BFFCallBack 是應用程式定義函數名稱的預留位置。

語法

BFFCALLBACK Bffcallback;

int Bffcallback(
  [in] HWND hwnd,
  [in] UINT uMsg,
  [in] LPARAM lParam,
  [in] LPARAM lpData
)
{...}

參數

[in] hwnd

包含流覽對話方塊的視窗控制碼。 此控制碼是用來使用 SendMessage 函式將訊息傳送至流覽對話方塊。

容器瀏覽器對話方塊會處理下列訊息。

BFFM_ENABLEOK

此訊息會啟用或停用對話方塊中的 [確定 ] 命令按鈕。

此訊息的 wParam 包含布林值,如果為零,則會停用 [確定 ] 命令按鈕。 如果 wParam 不是零,則會啟用 [確定 ] 命令按鈕。 根據預設,已啟用 [確定 ] 命令按鈕。

不會使用此訊息的傳回值。

BFFM_SETSELECTION

此訊息會選取對話方塊中的專案。

此訊息的 lParamTCHAR 字串的指標,其中包含要選取之專案的 ADsPath。 即使此訊息有 ANSI 和 Unicode 版本,這兩個版本仍會取得 Unicode 字串的指標。

不會使用此訊息的傳回值。

[in] uMsg

指定下列其中一個流覽訊息。

BFFM_INITIALIZED

此通知會在初始化對話方塊之後傳送。

不使用lParam

忽略此通知的傳回值。

BFFM_SELCHANGED

此通知會在對話方塊的選取範圍變更之後傳送。

lParam 是 Unicode 字串的指標,其中包含新選取專案的 ADsPath。

忽略此通知的傳回值。

DSBM_CHANGEIMAGESTATE

保留的。

DSBM_CONTEXTMENU

當對話方塊收到 WM_CONTEXTMENU 訊息時,就會傳送此通知。

lParam是與WM_CONTEXTMENU訊息一起傳遞的wParam值。

忽略此通知的傳回值。

DSBM_HELP

當對話方塊收到 WM_HELP 訊息時,就會傳送此通知。

lParam是使用WM_HELP訊息傳遞的lParam值。

忽略此通知的傳回值。

DSBM_QUERYINSERT

此通知會在插入樹狀結構的每個容器物件之前傳送。 應用程式可以使用此通知來修改對話方塊的內容。

lParamDSBITEM 結構的指標,其中包含插入專案的相關資料。 此結構的某些成員,例如 szDisplayName,可以在此通知期間修改,以變更專案顯示的方式。

如果 DSBITEM 結構中的資料變更,則傳回此通知中的非零值。 如果應該不變更插入時間,則傳回零。

注意 僅支援此訊息的 Unicode 版本 DSBM_QUERYINSERTW。 不支援DSBM_QUERYINSERTA
 

[in] lParam

此參數的值和意義是由收到的通知所決定。 如需詳細資訊,請參閱 uMsg 參數下的通知訊息描述。

[in] lpData

包含傳遞至DsBrowseForContainer函式之DSBROWSEINFO結構的指標。 所有通知訊息都是如此。

傳回值

備註

DSBM_*訊息值定義于 Dsclient.h 中。

規格需求

   
最低支援的用戶端 Windows Vista
最低支援的伺服器 Windows Server 2008
目標平台 Windows
標頭 shlobj_core.h

另請參閱

DSBITEM

DSBROWSEINFO

DsBrowseForContainer

SendMessage

WM_CONTEXTMENU

WM_HELP