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_MAXIMUM (4)
11 typedef struct _WINDOWPROC_CALLBACK_ARGUMENTS
22 } WINDOWPROC_CALLBACK_ARGUMENTS
, *PWINDOWPROC_CALLBACK_ARGUMENTS
;
24 typedef struct _SENDASYNCPROC_CALLBACK_ARGUMENTS
26 SENDASYNCPROC Callback
;
31 } SENDASYNCPROC_CALLBACK_ARGUMENTS
, *PSENDASYNCPROC_CALLBACK_ARGUMENTS
;
33 typedef struct _HOOKPROC_CALLBACK_ARGUMENTS
41 UINT ModuleNameLength
;
43 } HOOKPROC_CALLBACK_ARGUMENTS
, *PHOOKPROC_CALLBACK_ARGUMENTS
;
45 typedef struct _HOOKPROC_CBT_CREATEWND_EXTRA_ARGUMENTS
47 CREATESTRUCTW Cs
; /* lpszName and lpszClass replaced by offsets */
51 } HOOKPROC_CBT_CREATEWND_EXTRA_ARGUMENTS
, *PHOOKPROC_CBT_CREATEWND_EXTRA_ARGUMENTS
;
54 User32CallWindowProcFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
56 User32CallSendAsyncProcForKernel(PVOID Arguments
, ULONG ArgumentLength
);
58 User32LoadSysMenuTemplateForKernel(PVOID Arguments
, ULONG ArgumentLength
);
60 User32SetupDefaultCursors(PVOID Arguments
, ULONG ArgumentLength
);
62 User32CallHookProcFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
64 #endif /* __INCLUDE_USER32_CALLBACK_H */