27 # define CALL_EXTERN_WNDPROC(proc, h, m, w, l) proc(h, m, w, l) 34 #define SET(msg) (1 << ((msg) & 31)) 47 SET(WM_STYLECHANGING) |
SET(WM_STYLECHANGED),
296 if (
mapping != WMCHAR_MAP_NOMAPPING)
300 struct wm_char_mapping_data *
data = get_user_thread_info()->wmchar_data;
317 TRACE(
"map stored %02x,%02x -> %04x mapping %u\n", (
BYTE)ch[0], (
BYTE)ch[1], wch[0],
mapping );
324 TRACE(
"map %02x -> %04x\n", (
BYTE)ch[0], wch[0] );
333 get_user_thread_info()->wmchar_data =
data;
335 TRACE(
"storing lead byte %02x mapping %u\n", low,
mapping );
386 pKMCopyData->dwData = pUMCopyData->
dwData;
387 pKMCopyData->cbData = pUMCopyData->
cbData;
388 pKMCopyData->lpData = pKMCopyData + 1;
399 TRACE(
"WM_COPYGLOBALDATA get data ptr %p\n",KMMsg->
lParam);
420 TRACE(
"WM_COPYGLOBALDATA cleanup return\n");
464 pKMCopyData->lpData = pKMCopyData + 1;
475 TRACE(
"WM_COPYGLOBALDATA to User hGlobal %p\n",hGlobal);
493 #ifdef TODO // Kept as historic. 521 *UnicodeMsg = *AnsiMsg;
529 if (!AnsiMsg->
lParam)
break;
578 if (!AnsiMsg->
lParam)
break;
638 if (!
IS_ATOM(xs->cs.lpszClass))
647 xs->mdi_cs.szTitle = xs->cs.lpszName;
648 xs->mdi_cs.szClass = xs->cs.lpszClass;
649 xs->cs.lpCreateParams = &xs->mdi_cs;
700 ERR(
"FIXME EM_GETLINE A2U\n");
722 if (!UnicodeMsg->
lParam)
break;
735 if (!UnicodeMsg->
lParam)
break;
784 struct s *xs = (
struct s *)UnicodeMsg->
lParam;
879 *AnsiMsg = *UnicodeMsg;
889 ULONG NameSize, ClassSize;
932 RtlInitEmptyAnsiString(&
AnsiString, (
PCHAR)(pmdi_cs + 1) + NameSize, ClassSize);
956 if (!UnicodeMsg->
lParam)
break;
1005 if (!UnicodeMsg->
lParam)
break;
1110 switch(newmsg.message)
1149 ERR(
"FIXME EM_GETLINE U2A\n");
1169 if (!AnsiMsg->
lParam)
break;
1191 if (!AnsiMsg->
lParam)
break;
1314 AnsiMsg.hwnd =
hwnd;
1396 return ISMEX_NOSEND;
1441 WARN(
"IntCallWindowsProcW() called with WndProc = NULL!\n");
1460 UnicodeMsg.hwnd =
hWnd;
1461 UnicodeMsg.message =
Msg;
1462 UnicodeMsg.wParam =
wParam;
1463 UnicodeMsg.lParam =
lParam;
1464 UnicodeMsg.time = 0;
1465 UnicodeMsg.pt.x = 0;
1466 UnicodeMsg.pt.y = 0;
1472 if (Hook && (MsgOverride || DlgOverride))
1483 ERR(
"Got exception in hooked PreWndProc, dlg:%d!\n", DlgOverride);
1488 if (PreResult)
goto Exit;
1505 if (Hook && (MsgOverride || DlgOverride))
1516 ERR(
"Got exception in hooked PostWndProc, dlg:%d!\n", DlgOverride);
1528 if (Hook && (MsgOverride || DlgOverride))
1539 ERR(
"Got exception in hooked PreWndProc, dlg:%d!\n", DlgOverride);
1544 if (PreResult)
goto Exit;
1561 if (Hook && (MsgOverride || DlgOverride))
1572 ERR(
"Got exception in hooked PostWndProc, dlg:%d!\n", DlgOverride);
1598 TRACE(
"IntCallWindowProcA: IsAnsiProc : %s, WndProc %p, pWnd %p, hWnd %p, Msg %u, wParam %Iu, lParam %Iu.\n",
1603 WARN(
"IntCallWindowsProcA() called with WndProc = NULL!\n");
1622 if (Hook && (MsgOverride || DlgOverride))
1633 ERR(
"Got exception in hooked PreWndProc, dlg:%d!\n", DlgOverride);
1638 if (PreResult)
goto Exit;
1655 if (Hook && (MsgOverride || DlgOverride))
1666 ERR(
"Got exception in hooked PostWndProc, dlg:%d!\n", DlgOverride);
1673 AnsiMsg.hwnd =
hWnd;
1674 AnsiMsg.message =
Msg;
1685 if (Hook && (MsgOverride || DlgOverride))
1696 ERR(
"Got exception in hooked PreWndProc, dlg:%d!\n", DlgOverride);
1701 if (PreResult)
goto Exit;
1718 if (Hook && (MsgOverride || DlgOverride))
1729 ERR(
"Got exception in hooked PostWndProc, dlg:%d!\n", DlgOverride);
1784 IsAnsi = !Wnd->Unicode;
1790 IsAnsi = !Wnd->Unicode;
1817 if (lpPrevWndFunc ==
NULL)
1819 WARN(
"CallWindowProcA: lpPrevWndFunc == NULL!\n");
1830 if (CallProc !=
NULL)
1842 WARN(
"CallWindowProcA: can not dereference WndProcHandle\n");
1863 if (lpPrevWndFunc ==
NULL)
1865 WARN(
"CallWindowProcA: lpPrevWndFunc == NULL!\n");
1876 if (CallProc !=
NULL)
1888 WARN(
"CallWindowProcW: can not dereference WndProcHandle\n");
1913 if (lpmsg->hwnd !=
NULL)
1936 WARN(
"Validating Timer Callback failed!\n");
1949 ERR(
"Exception in Timer Callback!\n");
1953 else if (Wnd !=
NULL)
2002 if (lpmsg->hwnd !=
NULL)
2025 WARN(
"Validating Timer Callback failed!\n");
2042 else if (Wnd !=
NULL)
2059 WARN(
"Exception in Timer Callback WndProcW!\n");
2099 if ( (wMsgFilterMin|wMsgFilterMax) & ~
WM_MAXIMUM )
2106 if (-1 == (
int) Res)
2129 if ( (wMsgFilterMin|wMsgFilterMax) & ~
WM_MAXIMUM )
2136 if (-1 == (
int) Res)
2156 if (!
hWnd && pci && pcti)
2172 FIXME(
"seeSpins!\n");
2196 if (-1 == (
int) Res || !Res)
2223 if (-1 == (
int) Res || !Res)
2389 Window->head.pti == ti &&
2408 UMMsg.message =
Msg;
2429 ERR(
"SendMessageW Error\n");
2444 MSG AnsiMsg, UcMsg, KMMsg;
2461 Window->head.pti == ti &&
2480 AnsiMsg.message =
Msg;
2507 ERR(
"SendMessageA Error\n");
2539 CallBackInfo.
CallBack = lpCallBack;
2542 AnsiMsg.hwnd =
hWnd;
2543 AnsiMsg.message =
Msg;
2589 CallBackInfo.
CallBack = lpCallBack;
2615 MSG AnsiMsg, UcMsg, KMMsg;
2625 if (lpdwResult) *lpdwResult = 0;
2633 AnsiMsg.hwnd =
hWnd;
2634 AnsiMsg.message =
Msg;
2663 if (lpdwResult) *lpdwResult = dsm.Result;
2695 if (lpdwResult) *lpdwResult = 0;
2704 UMMsg.message =
Msg;
2725 if (lpdwResult) *lpdwResult = dsm.Result;
2752 AnsiMsg.hwnd =
hWnd;
2753 AnsiMsg.message =
Msg;
2806 switch (lpMsg->message)
2902 #define QS_TEMPALLINPUT 255 // ATM, do not support QS_RAWINPUT 2941 KMMsg.hwnd = CallbackArgs->
Wnd;
2942 KMMsg.message = CallbackArgs->
Msg;
2943 KMMsg.wParam = CallbackArgs->
wParam;
2956 switch(KMMsg.message)
2960 TRACE(
"WM_CREATE CB %p lParam %p\n",CallbackArgs, KMMsg.
lParam);
2965 TRACE(
"WM_NCCREATE CB %p lParam %p\n",CallbackArgs, KMMsg.
lParam);
2970 TRACE(
"WM_SYSTIMER %p\n",KMMsg.hwnd);
2989 KMMsg.lParam = CallbackArgs->
lParam;
3019 switch(KMMsg.message)
3060 DWORD dwMilliseconds,
3105 if(!Hook(
FALSE, &Addresses) || !Addresses.
cbSize) {
3176 DWORD dwMilliseconds,
3181 HANDLE MessageQueueHandle;
3207 if (MessageQueueHandle ==
NULL)
3214 if (RealHandles ==
NULL)
3222 RealHandles[nCount] = MessageQueueHandle;
3251 DWORD dwMilliseconds,
3266 DWORD dwMilliseconds,
3315 | BSF_ALLOWSFW | BSF_SENDNOTIFYMESSAGE | BSF_RETURNHDESK | BSF_LUID );
3318 (!pBSMInfo && (
dwflags & (BSF_RETURNHDESK|BSF_LUID))) )
3324 if(uiMessage >=
WM_USER && uiMessage < 0xC000)
3334 if (!lpdwRecipients)
3335 lpdwRecipients = &recips;
3345 if (pBSMInfo->cbSize !=
sizeof(BSMINFO))
3357 if (
dwflags & BSF_LUID) parm.
luid = pBSMInfo->luid;
3371 pBSMInfo->hdesk = parm.hDesk;
3372 pBSMInfo->hwnd = parm.hWnd;
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
#define CBS_OWNERDRAWFIXED
LRESULT WINAPI SendMessageA(HWND Wnd, UINT Msg, WPARAM wParam, LPARAM lParam)
#define BSM_ALLCOMPONENTS
#define ERROR_INVALID_PARAMETER
static const WCHAR Class[]
BOOL WINAPI SendNotifyMessageW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
#define CALL_EXTERN_WNDPROC(proc, h, m, w, l)
static LRESULT FASTCALL IntCallWindowProcA(BOOL IsAnsiProc, WNDPROC WndProc, PWND pWnd, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
struct _USER_MESSAGE_PUMP_ADDRESSES * PUSER_MESSAGE_PUMP_ADDRESSES
BOOL FASTCALL EndUserApiHook(VOID)
#define LOCALE_IDEFAULTANSICODEPAGE
LRESULT WINAPI DesktopWndProcW(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
#define LB_INSERTSTRING_LOWER
BOOL FASTCALL MessageInit(VOID)
HGLOBAL NTAPI GlobalAlloc(UINT uFlags, SIZE_T dwBytes)
#define QUERY_WINDOW_UNIQUE_PROCESS_ID
BOOL WINAPI TranslateMessageEx(CONST MSG *lpMsg, UINT Flags)
WNDPROC pfnClientPrevious
DWORD_PTR NTAPI NtUserGetThreadState(DWORD Routine)
#define LB_FINDSTRINGEXACT
#define STATUS_INFO_LENGTH_MISMATCH
WINE_UNICODE_INLINE unsigned int strlenW(const WCHAR *str)
#define WideCharToMultiByte
_In_ WDFIOTARGET _In_ PWDF_REQUEST_COMPLETION_PARAMS Params
#define BSF_IGNORECURRENTTASK
struct _WINDOWPROC_CALLBACK_ARGUMENTS * PWINDOWPROC_CALLBACK_ARGUMENTS
PCALLPROCDATA FASTCALL ValidateCallProc(HANDLE hCallProc)
static BOOL FASTCALL MsgiUnicodeToAnsiCleanup(LPMSG AnsiMsg, LPMSG UnicodeMsg)
static BOOL FASTCALL MsgiUMToKMMessage(PMSG UMMsg, PMSG KMMsg, BOOL Posted)
BOOL APIENTRY NtUserTranslateMessage(LPMSG lpMsg, UINT flags)
EXTINLINE LPARAM NtUserxGetMessageExtraInfo(VOID)
#define GETPFNCLIENTW(fnid)
ACPI_SIZE strlen(const char *String)
IN BOOLEAN OUT PSTR Buffer
WNDPROC_OWP PostDefDlgProc
DWORD WINAPI MsgWaitForMultipleObjects(DWORD nCount, CONST HANDLE *lpHandles, BOOL fWaitAll, DWORD dwMilliseconds, DWORD dwWakeMask)
#define MWMO_INPUTAVAILABLE
RealInternalGetMessageProc NtUserRealInternalGetMessage
#define QS_ALLPOSTMESSAGE
UINT WINAPI RegisterWindowMessageW(LPCWSTR lpString)
#define WM_ASKCBFORMATNAME
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG _In_opt_ PVOID Data
TW_UINT32 TW_UINT16 TW_UINT16 MSG
BOOL(WINAPI * MESSAGEPUMPHOOKPROC)(BOOL Unregistering, PUSER_MESSAGE_PUMP_ADDRESSES MessagePumpAddresses)
RealWaitMessageExProc NtUserRealWaitMessageEx
LONG WINAPI BroadcastSystemMessageW(DWORD dwFlags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam)
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
GLenum GLuint GLenum GLsizei const GLchar * message
#define BSF_NOTIMEOUTIFNOTHUNG
LPARAM WINAPI GetMessageExtraInfo(VOID)
DWORD WINAPI GetQueueStatus(UINT flags)
DWORD WINAPI GetTickCount(VOID)
DWORD(WINAPI * RealMsgWaitForMultipleObjectsExProc)(DWORD nCount, CONST HANDLE *lpHandles, DWORD dwMilliseconds, DWORD dwWakeMask, DWORD dwFlags)
static LRESULT WINAPI IntCallMessageProc(IN PWND Wnd, IN HWND hWnd, IN UINT Msg, IN WPARAM wParam, IN LPARAM lParam, IN BOOL Ansi)
static HANDLE ULONG_PTR dwData
#define ERROR_NOT_ENOUGH_MEMORY
BOOL WINAPI PostMessageA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
static BOOL FASTCALL MsgiAnsiToUnicodeReply(LPMSG UnicodeMsg, LPMSG AnsiMsg, LRESULT *Result)
IN PVOID IN PVOID IN USHORT IN USHORT Size
BOOL WINAPI SendMessageCallbackW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, SENDASYNCPROC lpCallBack, ULONG_PTR dwData)
BOOL WINAPI SetMessageQueue(int cMessagesMax)
BOOL WINAPI InSendMessage(VOID)
static unsigned DdeNumUsed
BOOL APIENTRY NtUserPostThreadMessage(DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam)
MESSAGEPUMPHOOKPROC gpfnInitMPH
struct tagDDEPAIR DDEPAIR
#define GetWin32ClientInfo()
#define TIF_WAITFORINPUTIDLE
WDF_EXTERN_C_START typedef _Must_inspect_result_ _In_opt_ PCUNICODE_STRING UnicodeString
EXTINLINE DWORD NtUserxGetQueueStatus(UINT flags)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
RealMsgWaitForMultipleObjectsExProc RealMsgWaitForMultipleObjectsEx
BOOL WINAPI IsDialogMessageA(HWND hwndDlg, LPMSG pmsg)
DWORD WINAPI RealMsgWaitForMultipleObjectsEx(DWORD nCount, CONST HANDLE *pHandles, DWORD dwMilliseconds, DWORD dwWakeMask, DWORD dwFlags)
void SPY_ExitMessage(INT iFlag, HWND hwnd, UINT msg, LRESULT lReturn, WPARAM wParam, LPARAM lParam)
#define WM_QUERYDROPOBJECT
#define LB_ADDSTRING_UPPER
#define CBS_OWNERDRAWVARIABLE
struct tagDDEPAIR * PDDEPAIR
BOOL WINAPI DECLSPEC_HOTPATCH PeekMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg)
#define LBS_OWNERDRAWFIXED
struct _THREADINFO * GetW32ThreadInfo(VOID)
PCLIENTTHREADINFO pClientThreadInfo
NTSYSAPI VOID NTAPI RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceString)
EXTINLINE VOID NtUserxMsqClearWakeMask(VOID)
NTSYSAPI NTSTATUS NTAPI ZwCallbackReturn(_In_ PVOID Result, _In_ ULONG ResultLength, _In_ NTSTATUS Status)
EXTINLINE BOOL NtUserxUnInitMessagePump(VOID)
LONG WINAPI BroadcastSystemMessageExW(DWORD dwflags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam, PBSMINFO pBSMInfo)
INT WINAPI GetLocaleInfoW(LCID lcid, LCTYPE lctype, LPWSTR buffer, INT len)
LONG WINAPI IntBroadcastSystemMessage(DWORD dwflags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam, PBSMINFO pBSMInfo, BOOL Ansi)
DWORD_PTR NTAPI NtUserQueryWindow(HWND hWnd, DWORD Index)
SIZE_T NTAPI GlobalSize(HGLOBAL hMem)
BOOL FASTCALL IsMsgOverride(UINT, PUAHOWP)
RealGetQueueStatusProc RealGetQueueStatus
EXTINLINE DWORD NtUserxGetMessagePos(VOID)
static WPARAM FASTCALL map_wparam_AtoW(UINT message, WPARAM wparam)
static BOOL FASTCALL combobox_has_strings(HWND hwnd)
static __inline PVOID DesktopPtrToUser(PVOID Ptr)
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
BOOL WINAPI DECLSPEC_HOTPATCH GetMessageW(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax)
LONG WINAPI GetWindowLongA(_In_ HWND, _In_ int)
static const unsigned int message_pointer_flags[]
BOOL WINAPI SendNotifyMessageA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
DWORD WINAPI RealGetQueueStatus(UINT flags)
static BOOL FASTCALL MsgiUnicodeToAnsiMessage(HWND hwnd, LPMSG AnsiMsg, LPMSG UnicodeMsg)
LRESULT FASTCALL IntCallWindowProcW(BOOL IsAnsiProc, WNDPROC WndProc, PWND pWnd, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
static WPARAM FASTCALL map_wparam_char_WtoA(WPARAM wParam, DWORD len)
#define EXCEPTION_EXECUTE_HANDLER
static BOOL FASTCALL MsgiKMToUMReply(PMSG KMMsg, PMSG UMMsg, LRESULT *Result)
NTSYSAPI NTSTATUS NTAPI ZwYieldExecution(VOID)
VOID WINAPI PostQuitMessage(int nExitCode)
LONG WINAPI GetWindowLongW(_In_ HWND, _In_ int)
static BOOL FASTCALL MsgiAnsiToUnicodeMessage(HWND hwnd, LPMSG UnicodeMsg, LPMSG AnsiMsg)
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
BOOL WINAPI RegisterMessagePumpHook(MESSAGEPUMPHOOKPROC Hook)
LRESULT WINAPI CallWindowProcW(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
HWND WINAPI GetDesktopWindow(void)
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
BOOL WINAPI IsDBCSLeadByte(BYTE TestByte)
BOOL WINAPI UnregisterMessagePumpHook(VOID)
LRESULT WINAPI DesktopWndProcA(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
NTSYSAPI BOOLEAN NTAPI RtlCreateUnicodeStringFromAsciiz(_Out_ PUNICODE_STRING Destination, _In_ PCSZ Source)
BOOL WINAPI GetInputState(VOID)
NTSYSAPI NTSTATUS NTAPI RtlUnicodeStringToAnsiString(PANSI_STRING DestinationString, PUNICODE_STRING SourceString, BOOLEAN AllocateDestinationString)
#define WH_CALLWNDPROCRET
BOOL APIENTRY NtUserGetMessage(PMSG pMsg, HWND hWnd, UINT MsgFilterMin, UINT MsgFilterMax)
BOOL WINAPI PostMessageW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
BOOL WINAPI ReleaseCapture(VOID)
PVOID NTAPI RtlAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size)
#define DECLSPEC_HOTPATCH
BOOL(WINAPI * RealWaitMessageExProc)(DWORD, UINT)
struct _WINDOWPROC_CALLBACK_ARGUMENTS WINDOWPROC_CALLBACK_ARGUMENTS
BOOL APIENTRY NtUserMessageCall(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, ULONG_PTR ResultInfo, DWORD dwType, BOOL Ansi)
DWORD WINAPI GetMessagePos(VOID)
static BOOL FASTCALL MsgiAnsiToUnicodeCleanup(LPMSG UnicodeMsg, LPMSG AnsiMsg)
EXTINLINE VOID NtUserxPostQuitMessage(int nExitCode)
_Must_inspect_result_ _In_ ULONG Flags
_Out_ PCLIENT_ID ClientId
#define IS_INTRESOURCE(i)
#define CB_GETDROPPEDCONTROLRECT
#define EM_SETPASSWORDCHAR
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
NTSYSAPI NTSTATUS WINAPI RtlMultiByteToUnicodeN(LPWSTR, DWORD, LPDWORD, LPCSTR, DWORD)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
#define NT_SUCCESS(StatCode)
DWORD WINAPI WaitForMultipleObjectsEx(IN DWORD nCount, IN CONST HANDLE *lpHandles, IN BOOL bWaitAll, IN DWORD dwMilliseconds, IN BOOL bAlertable)
static VOID IntConvertMsgToAnsi(LPMSG lpMsg)
#define CTI_INSENDMESSAGE
BOOL(WINAPI * RealInternalGetMessageProc)(LPMSG, HWND, UINT, UINT, UINT, BOOL)
#define WM_WINDOWPOSCHANGING
#define ISITHOOKED(HookId)
void(CALLBACK * SENDASYNCPROC)(HWND, UINT, ULONG_PTR, LRESULT)
DWORD WINAPI InSendMessageEx(LPVOID lpReserved)
void SPY_EnterMessage(INT iFlag, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
NTSYSAPI VOID NTAPI RtlFreeAnsiString(PANSI_STRING AnsiString)
HGLOBAL FASTCALL DdeGetPair(HGLOBAL ServerMem)
struct _USER_MESSAGE_PUMP_ADDRESSES USER_MESSAGE_PUMP_ADDRESSES
GLenum GLenum GLenum GLenum mapping
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
HGLOBAL NTAPI GlobalFree(HGLOBAL hMem)
#define FNID_SENDMESSAGECALLBACK
BOOL NTAPI NtUserRealWaitMessageEx(DWORD dwWakeMask, UINT uTimeout)
WNDPROC_OWP PreDefDlgProc
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
static BOOL FASTCALL listbox_has_strings(HWND hwnd)
LONG WINAPI GetMessageTime(VOID)
LRESULT WINAPI DECLSPEC_HOTPATCH DispatchMessageW(CONST MSG *lpmsg)
#define FNID_SENDNOTIFYMESSAGE
static unsigned DdeNumAlloc
NTSYSAPI NTSTATUS NTAPI RtlUnicodeToMultiByteN(PCHAR MbString, ULONG MbSize, PULONG ResultSize, PCWCH UnicodeString, ULONG UnicodeSize)
UINT NTAPI NtUserRegisterWindowMessage(PUNICODE_STRING MessageName)
BOOL WINAPI IsInsideMessagePumpHook()
HWND WINAPI GetCapture(VOID)
LPVOID NTAPI GlobalLock(HGLOBAL hMem)
PWND FASTCALL ValidateHwnd(HWND hwnd)
BOOL WINAPI SendMessageCallbackA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, SENDASYNCPROC lpCallBack, ULONG_PTR dwData)
WINE_DEFAULT_DEBUG_CHANNEL(crypt)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
struct tagCOPYDATASTRUCT * PCOPYDATASTRUCT
DWORD WINAPI MsgWaitForMultipleObjectsEx(DWORD nCount, CONST HANDLE *lpHandles, DWORD dwMilliseconds, DWORD dwWakeMask, DWORD dwFlags)
#define GETPFNCLIENTA(fnid)
#define memcpy(s1, s2, n)
static VOID FASTCALL MsgiUMToKMCleanup(PMSG UMMsg, PMSG KMMsg)
static _In_ DWORD dwflags
static BOOL FASTCALL MsgiKMToUMMessage(PMSG KMMsg, PMSG UMMsg)
BOOL WINAPI PeekMessageWorker(PMSG pMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg)
LRESULT WINAPI CallWindowProcA(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
#define LB_INSERTSTRING_UPPER
LRESULT APIENTRY NtUserDispatchMessage(PMSG UnsafeMsgInfo)
#define WM_COPYGLOBALDATA
#define InterlockedExchange
NTSYSAPI DWORD WINAPI RtlUnicodeStringToAnsiSize(const UNICODE_STRING *)
DWORD FASTCALL get_input_codepage(void)
LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
BOOL FASTCALL DdeAddPair(HGLOBAL ClientMem, HGLOBAL ServerMem)
EXTINLINE BOOL NtUserxReleaseCapture(VOID)
void WINAPI ResetMessagePumpHook(PUSER_MESSAGE_PUMP_ADDRESSES Addresses)
BOOL WINAPI PostThreadMessageA(DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam)
#define FNID_BROADCASTSYSTEMMESSAGE
FORCEINLINE struct _TEB * NtCurrentTeb(VOID)
BOOL WINAPI DECLSPEC_HOTPATCH GetMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
BOOL APIENTRY NtUserValidateTimerCallback(LPARAM lParam)
#define LB_ADDSTRING_LOWER
LRESULT WINAPI SendMessageW(HWND Wnd, UINT Msg, WPARAM wParam, LPARAM lParam)
#define ERROR_MESSAGE_SYNC_ONLY
PKEYBOARD_LAYOUT GetKeyboardLayout()
LPARAM WINAPI SetMessageExtraInfo(LPARAM lParam)
BOOL FASTCALL BeginIfHookedUserApiHook(VOID)
NTSTATUS WINAPI User32CallWindowProcFromKernel(PVOID Arguments, ULONG ArgumentLength)
BOOL NTAPI GlobalUnlock(HGLOBAL hMem)
BOOL NTAPI NtUserRealInternalGetMessage(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg, BOOL bGMSG)
BOOL WINAPI TranslateMessage(CONST MSG *lpMsg)
#define LBS_OWNERDRAWVARIABLE
LRESULT WINAPI SendMessageTimeoutA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, UINT fuFlags, UINT uTimeout, PDWORD_PTR lpdwResult)
#define WM_WINDOWPOSCHANGED
EXTINLINE LPARAM NtUserxSetMessageExtraInfo(LPARAM lParam)
static BOOL(WINAPI *pCryptAcquireContextA)(HCRYPTPROV *
struct tagCOPYDATASTRUCT COPYDATASTRUCT
EXTINLINE HANDLE NtUserxMsqSetWakeMask(DWORD_PTR dwWaitMask)
static CRITICAL_SECTION DdeCrst
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
EXTINLINE BOOL NtUserxReplyMessage(LRESULT lResult)
#define BSM_INSTALLABLEDRIVERS
#define RtlCopyMemory(Destination, Source, Length)
UINT WINAPI RegisterWindowMessageA(LPCSTR lpString)
#define _SEH2_EXCEPT(...)
LONG WINAPI BroadcastSystemMessageExA(DWORD dwflags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam, PBSMINFO pBSMInfo)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
static BOOL FASTCALL MsgiUnicodeToAnsiReply(LPMSG AnsiMsg, LPMSG UnicodeMsg, LRESULT *Result)
BOOL WINAPI DECLSPEC_HOTPATCH PeekMessageW(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg)
LRESULT WINAPI SendMessageTimeoutW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, UINT fuFlags, UINT uTimeout, PDWORD_PTR lpdwResult)
BOOL WINAPI PostThreadMessageW(DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam)
VOID FASTCALL MessageCleanup(VOID)
static __inline BOOL IsCallProcHandle(IN WNDPROC lpWndProc)
USER_MESSAGE_PUMP_ADDRESSES gmph
#define WNDS_SERVERSIDEWINDOWPROC
BOOL APIENTRY NtUserPeekMessage(PMSG pMsg, HWND hWnd, UINT MsgFilterMin, UINT MsgFilterMax, UINT RemoveMsg)
static VOID FASTCALL MsgiKMToUMCleanup(PMSG KMMsg, PMSG UMMsg)
LRESULT WINAPI DECLSPEC_HOTPATCH DispatchMessageA(CONST MSG *lpmsg)
#define HeapFree(x, y, z)
#define ERROR_INVALID_FLAGS
BOOL WINAPI IsDialogMessageW(_In_ HWND, _In_ LPMSG)
#define FNID_SENDMESSAGEWTOOPTION
LONG WINAPI BroadcastSystemMessageA(DWORD dwFlags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam)
static int is_pointer_message(UINT message, WPARAM wparam)
DWORD(WINAPI * RealGetQueueStatusProc)(UINT flags)
static UINT WPARAM wparam
BOOL APIENTRY NtUserPostMessage(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
EXTINLINE BOOL NtUserxInitMessagePump(VOID)
BOOL WINAPI ReplyMessage(LRESULT lResult)
#define CB_FINDSTRINGEXACT