User and Graphics Device Interface Objects, страница 7

WH_CALLWNDPROC

 Нить или система

WH_CBT

 Нить или система

WH_DEBUG

 Нить или система

WH_GETMESSAGE

 Нить или система

WH_JOURNALPLAYBACK

 Система только

WH_JOURNALRECORD

 Система только

WH_KEYBOARD

 Нить или система

WH_MOUSE

 Нить или система

WH_MSGFILTER

 Нить или система

WH_SHELL

 Нить или система

WH_SYSMSGFILTER

 Система только

Таблица 3

Для определенного типа ловушки, ловушки нити вызываются сначала, затем ловушки системы.

Ловушки системы - общедоступный ресурс, и их установка воздействует на все приложения. Все функции ловушки системы должны быть в библиотеках. Ловушки Системы должны быть ограничены приложениями специального назначения или использоваться как помощь в разработке в течение отладки приложения. Библиотеки, которые больше не нуждаются в ловушке, должны удалить процедуру перехвата.

См. Также

CallNextHookEx, CallWndProc, CBTProc, DebugProc, GetMsgProc, JournalPlaybackProc, JournalRecordProc, KeyboardProc, MouseProc, MessageProc, ShellProc, SysMsgProc, UnhookWindowsHook

UnhookWindowsHook

Функция UnhookWindowsHook устаревает, но предусмотрена совместимость с 16-разрядными версиями Windows. Для Win32 приложения, используйте функцию UnhookWindowsHookEx.

BOOL UnhookWindowsHook (

    Int nCode,        // тип ловушки, чтобы удалить процедуру из

    HOOKPROC hkprc    // адреса процедуры перехвата

  );           

CreateMenu

Функция CreateMenu создает меню. Меню первоначально пусто, но может быть заполнено пунктами меню,  используя функции AppendMenu и InsertMenu.

HMENU CreateMenu (VOID)

Параметры

Эта функция не имеет никаких параметров.

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

В случае успешного завершения, возвращаемое значение - дескриптор созданного меню.

В случае неудачи, возвращаемое значение - NULL.

Замечания

Ресурсы, связанные с меню, которое назначено окну,  освобождаются автоматически. Если меню не назначено окну, приложение должно освободить ресурсы системы, связанные с меню перед закрытием. Приложение освобождает ресурсы меню,  вызывая функцию DestroyMenu.

Windows 95 только: система может поддерживать максимум 16,364 дескрипторов меню.

См. Также

AppendMenu, DestroyMenu, InsertMenu, SetMenu

DestroyMenu

Функция DestroyMenu уничтожает меню и освобождает память, которую занимает меню.

BOOL DestroyMenu (

    HMENU hMenu           // дескриптор меню

  );           

Параметры

hMenu

Идентифицирует меню, которое будет разрушено.

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

В случае успешного завершения, возвращаемое значение - TRUE.

В случае неудачи, возвращаемое значение - FALSE. Чтобы получить расширенную информацию об ошибке, вызовите GetLastError.

Замечания

Перед закрытием, приложение должно использовать эту функцию, чтобы уничтожить меню, не назначенное окну. Меню, которое назначено окну,  автоматически разрушается, когда приложение закрывается.

См. Также

CreateMenu, DeleteMenu, RemoveMenu

CreatePopupMenu

Функция CreatePopupMenu создает всплывающее меню. Меню первоначально пусто, но может быть заполнено пунктами меню,  используя функции AppendMenu и InsertMenu (в Windows 95, Вы можете также использовать функцию InsertMenuItem, чтобы и конкатенировать и вставить пункты меню).

HMENU CreatePopupMenu (VOID)

Параметры

Эта функция не имеет никаких параметров.

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

В случае успешного завершения, возвращаемое значение - дескриптор созданного всплывающего меню.

В случае неудачи, возвращаемое значение - NULL.

Замечания

Приложение может добавлять всплывающее меню для существующего меню или всплывающего меню, или может отображать плавающее всплывающее меню,  вызывая функцию TrackPopupMenu.