Поделиться через


Функция обратного вызова BFFCALLBACK (shlobj_core.h)

Функция BFFCallBack — это определяемая приложением функция обратного вызова, которая получает уведомления о событиях из диалогового окна браузера контейнеров доменные службы Active Directory. Указатель на эту функцию предоставляется в диалоговом окне браузера контейнеров в элементе pfnCallback структуры DSBROWSEINFO при вызове функции DsBrowseForContainer . 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 и Юникод, обе версии принимают указатель на строку Юникода.

Возвращаемое значение для этого сообщения не используется.

[in] uMsg

Указывает одно из следующих сообщений обзора.

BFFM_INITIALIZED

Это уведомление отправляется после инициализации диалогового окна.

lParam не используется.

Значение, возвращаемое этим уведомлением, игнорируется.

BFFM_SELCHANGED

Это уведомление отправляется после изменения выбора в диалоговом окне.

lParam — это указатель на строку Юникода, содержащую ADsPath только что выбранного элемента.

Значение, возвращаемое этим уведомлением, игнорируется.

DSBM_CHANGEIMAGESTATE

Зарезервировано.

DSBM_CONTEXTMENU

Это уведомление отправляется, когда диалоговое окно получает сообщение WM_CONTEXTMENU .

lParam — это значение wParam, переданное вместе с сообщением WM_CONTEXTMENU .

Значение, возвращаемое этим уведомлением, игнорируется.

DSBM_HELP

Это уведомление отправляется, когда диалоговое окно получает WM_HELP сообщение.

lParam — это значение lParam, переданное вместе с сообщением WM_HELP .

Значение, возвращаемое этим уведомлением, игнорируется.

DSBM_QUERYINSERT

Это уведомление отправляется перед каждым объектом контейнера, который вставляется в дерево. Приложение может использовать это уведомление для изменения содержимого диалогового окна.

lParam — это указатель на структуру DSBITEM , содержащую данные о вставленном элементе. Некоторые элементы этой структуры, например szDisplayName, можно изменить во время этого уведомления, чтобы изменить способ отображения элементов.

Возвращает ненулевое значение из этого уведомления при изменении данных в структуре DSBITEM . Возвращает ноль, если время должно быть вставлено без изменений.

Примечание Поддерживается только версия Юникода этого сообщения , DSBM_QUERYINSERTW. DSBM_QUERYINSERTA не поддерживается.
 

[in] lParam

Значение и значение этого параметра определяется полученным уведомлением. Дополнительные сведения см. в описании сообщений уведомлений в параметре uMsg .

[in] lpData

Содержит указатель на структуру DSBROWSEINFO , переданную функции DsBrowseForContainer . Это верно для всех уведомлений.

Возвращаемое значение

None

Remarks

Значения сообщений DSBM_* определены в dsclient.h.

Требования

   
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header shlobj_core.h

См. также раздел

DSBITEM

DSBROWSEINFO

DsBrowseForContainer

SendMessage

WM_CONTEXTMENU

WM_HELP