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 结构中的数据发生更改,则从此通知返回非零值。 如果时间应保持不变,则返回零。

注意 仅支持此消息的 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