1 #ifndef __INCLUDE_USER32_CALLBACK_H
2 #define __INCLUDE_USER32_CALLBACK_H
4 #define USER32_CALLBACK_WINDOWPROC (0)
5 #define USER32_CALLBACK_SENDASYNCPROC (1)
6 #define USER32_CALLBACK_LOADSYSMENUTEMPLATE (2)
7 #define USER32_CALLBACK_LOADDEFAULTCURSORS (3)
8 #define USER32_CALLBACK_HOOKPROC (4)
9 #define USER32_CALLBACK_EVENTPROC (5)
10 #define USER32_CALLBACK_LOADMENU (6)
11 #define USER32_CALLBACK_CLIENTTHREADSTARTUP (7)
12 #define USER32_CALLBACK_CLIENTLOADLIBRARY (8)
13 #define USER32_CALLBACK_GETCHARSETINFO (9)
14 #define USER32_CALLBACK_MAXIMUM (9)
16 typedef struct _WINDOWPROC_CALLBACK_ARGUMENTS
27 } WINDOWPROC_CALLBACK_ARGUMENTS
, *PWINDOWPROC_CALLBACK_ARGUMENTS
;
29 typedef struct _SENDASYNCPROC_CALLBACK_ARGUMENTS
31 SENDASYNCPROC Callback
;
36 } SENDASYNCPROC_CALLBACK_ARGUMENTS
, *PSENDASYNCPROC_CALLBACK_ARGUMENTS
;
38 typedef struct _CALL_BACK_INFO
40 SENDASYNCPROC CallBack
;
42 } CALL_BACK_INFO
, * PCALL_BACK_INFO
;
45 typedef struct _HOOKPROC_CALLBACK_ARGUMENTS
53 } HOOKPROC_CALLBACK_ARGUMENTS
, *PHOOKPROC_CALLBACK_ARGUMENTS
;
55 typedef struct _HOOKPROC_CBT_CREATEWND_EXTRA_ARGUMENTS
57 CREATESTRUCTW Cs
; /* lpszName and lpszClass replaced by offsets */
61 } HOOKPROC_CBT_CREATEWND_EXTRA_ARGUMENTS
, *PHOOKPROC_CBT_CREATEWND_EXTRA_ARGUMENTS
;
63 typedef struct _EVENTPROC_CALLBACK_ARGUMENTS
73 } EVENTPROC_CALLBACK_ARGUMENTS
, *PEVENTPROC_CALLBACK_ARGUMENTS
;
75 typedef struct _LOADMENU_CALLBACK_ARGUMENTS
79 } LOADMENU_CALLBACK_ARGUMENTS
, *PLOADMENU_CALLBACK_ARGUMENTS
;
81 typedef struct _CLIENT_LOAD_LIBRARY_ARGUMENTS
83 UNICODE_STRING strLibraryName
;
84 UNICODE_STRING strInitFuncName
;
87 } CLIENT_LOAD_LIBRARY_ARGUMENTS
, *PCLIENT_LOAD_LIBRARY_ARGUMENTS
;
89 typedef struct _GET_CHARSET_INFO
93 } GET_CHARSET_INFO
, *PGET_CHARSET_INFO
;
96 User32CallWindowProcFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
98 User32CallSendAsyncProcForKernel(PVOID Arguments
, ULONG ArgumentLength
);
100 User32LoadSysMenuTemplateForKernel(PVOID Arguments
, ULONG ArgumentLength
);
102 User32SetupDefaultCursors(PVOID Arguments
, ULONG ArgumentLength
);
104 User32CallHookProcFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
106 User32CallEventProcFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
108 User32CallLoadMenuFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
110 User32CallClientThreadSetupFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
112 User32CallClientLoadLibraryFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
114 User32CallGetCharsetInfo(PVOID Arguments
, ULONG ArgumentLength
);
115 #endif /* __INCLUDE_USER32_CALLBACK_H */