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
此訊息會選取對話方塊中的專案。
此訊息的 lParam 是 TCHAR 字串的指標,其中包含要選取之專案的 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
此通知會在插入樹狀結構的每個容器物件之前傳送。 應用程式可以使用此通知來修改對話方塊的內容。
lParam 是 DSBITEM 結構的指標,其中包含插入專案的相關資料。 此結構的某些成員,例如 szDisplayName,可以在此通知期間修改,以變更專案顯示的方式。
如果 DSBITEM 結構中的資料變更,則傳回此通知中的非零值。 如果應該不變更插入時間,則傳回零。
[in] lParam
此參數的值和意義是由收到的通知所決定。 如需詳細資訊,請參閱 uMsg 參數下的通知訊息描述。
[in] lpData
包含傳遞至DsBrowseForContainer函式之DSBROWSEINFO結構的指標。 所有通知訊息都是如此。
傳回值
無
備註
DSBM_*訊息值定義于 Dsclient.h 中。
規格需求
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | shlobj_core.h |