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_SENDNCCREATE (2)
7 #define USER32_CALLBACK_SENDNCCALCSIZE (3)
8 #define USER32_CALLBACK_SENDCREATE (4)
9 #define USER32_CALLBACK_MAXIMUM (5)
11 typedef struct _WINDOWPROC_CALLBACK_ARGUMENTS
18 } WINDOWPROC_CALLBACK_ARGUMENTS
, *PWINDOWPROC_CALLBACK_ARGUMENTS
;
20 typedef struct _SENDASYNCPROC_CALLBACK_ARGUMENTS
22 SENDASYNCPROC Callback
;
27 } SENDASYNCPROC_CALLBACK_ARGUMENTS
, *PSENDASYNCPROC_CALLBACK_ARGUMENTS
;
29 typedef struct _SENDNCCREATEMESSAGE_CALLBACK_ARGUMENTS
32 CREATESTRUCT CreateStruct
;
33 } SENDNCCREATEMESSAGE_CALLBACK_ARGUMENTS
,
34 *PSENDNCCREATEMESSAGE_CALLBACK_ARGUMENTS
;
36 typedef struct _SENDCREATEMESSAGE_CALLBACK_ARGUMENTS
39 CREATESTRUCT CreateStruct
;
40 } SENDCREATEMESSAGE_CALLBACK_ARGUMENTS
, *PSENDCREATEMESSAGE_CALLBACK_ARGUMENTS
;
42 typedef struct _SENDNCCALCSIZEMESSAGE_CALLBACK_ARGUMENTS
47 NCCALCSIZE_PARAMS Params
;
48 } SENDNCCALCSIZEMESSAGE_CALLBACK_ARGUMENTS
,
49 *PSENDNCCALCSIZEMESSAGE_CALLBACK_ARGUMENTS
;
51 typedef struct _SENDNCCALCSIZEMESSAGE_CALLBACK_RESULT
55 NCCALCSIZE_PARAMS Params
;
56 } SENDNCCALCSIZEMESSAGE_CALLBACK_RESULT
,
57 *PSENDNCCALCSIZEMESSAGE_CALLBACK_RESULT
;
60 User32CallWindowProcFromKernel(PVOID Arguments
, ULONG ArgumentLength
);
62 User32CallSendAsyncProcForKernel(PVOID Arguments
, ULONG ArgumentLength
);
64 User32SendNCCREATEMessageForKernel(PVOID Arguments
, ULONG ArgumentLength
);
66 User32SendCREATEMessageForKernel(PVOID Arguments
, ULONG ArgumentLength
);
68 #endif /* __INCLUDE_USER32_CALLBACK_H */