OFNHookProc

OFNHookProc гачок процедура є застосування визначено або визначено бібліотеки зворотного виклику функції, що використовується з Explorer стиль відкриті діалогові вікна та Зберегти як Загальні. Функція одержує сповіщення про повідомлення, надіслані з діалогового вікна Загальні. Функція також отримує повідомлення для будь-яких додаткових елементів керування, визначеного, вказавши шаблон діалоговому дитини.

LPOFNHOOKPROC тип визначає покажчик функції зворотного виклику. OFNHookProc — це ім'я застосунку- або бібліотеки визначені функції.

Якщо під час створення Відкрити або Зберегти як Загальні діалогового вікна, і ви хочете гачок процедура не вказано OFN_EXPLORER прапор, слід використати процедуру гачок OFNHookProcOldStyle старого стилю. У цьому випадку, діалогове вікно матиме старого стилю інтерфейсу.

(UINT OFNHookProc зворотного ВИКЛИКУ HWND  hdlg, / / ручка дітей діалогове вікноUINTuiMsg, / / ідентифікатор повідомленняWPARAMwParam, / / повідомлення параметраLPARAMlParam / / повідомлення параметра);
 

Параметри

hdlg
Обробляти до діалогового вікна дитини діалогового вікна Відкрити або Зберегти як . Функція GetParent використовується для отримати ручку, щоб Відкрити або Зберегти як діалоговому вікні вікна.
uiMsg
Визначає час отримав повідомлення.
wParam
Визначає докладніші відомості про повідомлення. Точне значення залежить від значення параметра uiMsg.
lParam
Визначає докладніші відомості про повідомлення. Точне значення залежить від значення параметра uiMsg.

Якщо параметр uiMsg вказує WM_INITDIALOG повідомлень, lParam — це вказівник, яка є OPENFILENAME структура містить значення вказано, коли діалогове вікно було створено.

Повернення значень

Якщо процедура гачок повертає нуль, за промовчанням діалоговому вікні порядок обробляє повідомлення.

Якщо процедура гачок ненульове значення, за промовчанням діалоговому вікні порядок ігнорує повідомлення.

Для повідомлення про CDN_SHAREVIOLATION і CDN_FILEOK гачок процедура повинна повернути ненульове значення вказує, що вона використовується функція SetWindowLong встановити ненульове значення DWL_MSGRESULT.

Зауваження

Під час використання функції GetOpenFileName або GetSaveFileName для створення в Explorer стиль Відкрити або Зберегти як Загальні діалогового вікна, ви можете надати процедуру OFNHookProc гачок. Щоб дозволити гачок процедури, за допомогою OPENFILENAME структура, що ви пройшли діалогове вікно Створення функції. Вказати вказівник на гачок процедура член lpfnHook і вказати OFN_ENABLEHOOK прапор у член прапори.

Якщо ви надасте гачок процедури в Explorer стиль Загальні діалогового вікна, система створює діалоговому вікні, що дитина "у діалоговому вікні" за замовчуванням ". Гачок процедура діє як процедура діалоговому вікні дитини. Це діалогове вікно дитини на основі шаблону, вказаний у OPENFILENAME структурі, або це діалогове вікно дитини за замовчуванням, якщо шаблон не вказано. Діалоговому вікні дитини створюється під час процедури за замовчуванням діалогове вікно обробляє його WM_INITDIALOG повідомлення. Після того, як дитина діалогове вікно обробляє власну WM_INITDIALOG повідомлення, за замовчуванням діалогове вікно процедура рухається стандартних елементів керування, якщо необхідно, щоб звільнити місце для будь-яких додаткових елементів керування діалогового вікна дитини. Система надсилає повідомлення про CDN_INITDONE на гачок процедури.

Процедура гачок не отримувати повідомлення, надіслані для стандартних елементів керування діалогового вікна за замовчуванням. Ви можете підкласу стандартні елементи керування, але це рекомендується, тому що вона може зробити заявку несумісні з майбутніх версій Загальні діалогового вікна. Однак, загальні діалоги Explorer стиль надати набір повідомлень, що гачок процедуру можна використовувати для контролю та керування діалогове вікно. До них відносяться набір сповіщення про повідомлення, надіслані з діалогового вікна, а також повідомлення, які ви можете надіслати отримати інформацію з діалогового вікна. Повний список таких повідомлень в розділі Explorer-стиль гачок процедури.

Якщо процедура гачок процесів WM_CTLCOLORDLG повідомлення, вона має повернути дійсний пензля ручка для картини фон діалогового вікна. Загалом, якщо вона обробляє WM_CTLCOLOR * повідомлення, вона має повернути дійсний пензля ручка для картини фон вказаного елемента керування.

Не викликати функцію EndDialog з гачка процедури. Замість цього, процедури гачок функцію можна буде викликати PostMessage для надсилання WM_COMMAND повідомлення з IDABORT значення у діалоговому вікні порядку. Розміщення IDABORT закриття діалогового вікна і викликає діалоговому вікні функції для повернення значення FALSE. Якщо ви повинні знати, чому гачок процедура закрито діалогове вікно, необхідно надати свій власний зв'язку механізм між гачок процедури та заявку.

QuickInfo

nbsp; Windows &NT: вимагає 3.1 або пізнішої версії.
Windows:Вимагає Windows 95 або пізнішої версії.
Windows CE:Не підтримується.
Заголовка:Оголошена в commdlg.h.
Імпортувати бібліотеки:Користувача.

Дивіться також

Загальний огляд бібліотеки діалогового вікна, Загальні діалоговому вікні функції, GetOpenFileName, GetSaveFileName, OFNHookProcOldStyle, OPENFILENAME

Index