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);
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)
2912 if (
flags & QS_RAWINPUT)
2915 flags &= ~QS_RAWINPUT;
2951 KMMsg.hwnd = CallbackArgs->
Wnd;
2952 KMMsg.message = CallbackArgs->
Msg;
2953 KMMsg.wParam = CallbackArgs->
wParam;
2966 switch(KMMsg.message)
2970 TRACE(
"WM_CREATE CB %p lParam %p\n",CallbackArgs, KMMsg.
lParam);
2975 TRACE(
"WM_NCCREATE CB %p lParam %p\n",CallbackArgs, KMMsg.
lParam);
2980 TRACE(
"WM_SYSTIMER %p\n",KMMsg.hwnd);
2999 KMMsg.lParam = CallbackArgs->
lParam;
3029 switch(KMMsg.message)
3070 DWORD dwMilliseconds,
3115 if(!Hook(
FALSE, &Addresses) || !Addresses.
cbSize) {
3186 DWORD dwMilliseconds,
3191 HANDLE MessageQueueHandle;
3217 if (MessageQueueHandle ==
NULL)
3224 if (RealHandles ==
NULL)
3232 RealHandles[nCount] = MessageQueueHandle;
3261 DWORD dwMilliseconds,
3276 DWORD dwMilliseconds,
3325 | BSF_ALLOWSFW | BSF_SENDNOTIFYMESSAGE | BSF_RETURNHDESK | BSF_LUID );
3328 (!pBSMInfo && (
dwflags & (BSF_RETURNHDESK|BSF_LUID))) )
3334 if(uiMessage >=
WM_USER && uiMessage < 0xC000)
3344 if (!lpdwRecipients)
3345 lpdwRecipients = &recips;
3355 if (pBSMInfo->cbSize !=
sizeof(BSMINFO))
3367 if (
dwflags & BSF_LUID) parm.
luid = pBSMInfo->luid;
3381 pBSMInfo->hdesk = parm.
hDesk;
3382 pBSMInfo->hwnd = parm.
hWnd;
ACPI_SIZE strlen(const char *String)
#define InterlockedExchange
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
PVOID NTAPI RtlAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size)
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
static __inline BOOL IsCallProcHandle(IN WNDPROC lpWndProc)
LRESULT WINAPI DesktopWndProcW(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
#define LB_INSERTSTRING_LOWER
#define LB_INSERTSTRING_UPPER
#define LB_ADDSTRING_LOWER
#define LB_ADDSTRING_UPPER
#define BSF_NOTIMEOUTIFNOTHUNG
#define BSF_IGNORECURRENTTASK
#define BSM_INSTALLABLEDRIVERS
#define BSM_ALLCOMPONENTS
#define ERROR_NOT_ENOUGH_MEMORY
#define NT_SUCCESS(StatCode)
#define ERROR_INVALID_PARAMETER
#define HeapFree(x, y, z)
#define WideCharToMultiByte
#define ValidateHwnd(hwnd)
static PVOID FASTCALL DesktopPtrToUser(PVOID ptr)
DWORD WINAPI GetTickCount(VOID)
BOOL WINAPI IsDBCSLeadByte(BYTE testchar)
INT WINAPI GetLocaleInfoW(LCID lcid, LCTYPE lctype, LPWSTR buffer, INT len)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLenum GLenum GLenum GLenum mapping
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
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
LPVOID NTAPI GlobalLock(HGLOBAL hMem)
HGLOBAL NTAPI GlobalFree(HGLOBAL hMem)
BOOL NTAPI GlobalUnlock(HGLOBAL hMem)
HGLOBAL NTAPI GlobalAlloc(UINT uFlags, SIZE_T dwBytes)
SIZE_T NTAPI GlobalSize(HGLOBAL hMem)
#define ISITHOOKED(HookId)
UINT NTAPI NtUserRegisterWindowMessage(PUNICODE_STRING MessageName)
#define GETPFNCLIENTW(fnid)
#define GETPFNCLIENTA(fnid)
#define TIF_WAITFORINPUTIDLE
#define WNDS_SERVERSIDEWINDOWPROC
#define FNID_SENDMESSAGECALLBACK
struct _THREADINFO * GetW32ThreadInfo(VOID)
#define FNID_SENDMESSAGEWTOOPTION
@ THREADSTATE_INSENDMESSAGE
@ THREADSTATE_CAPTUREWINDOW
@ THREADSTATE_GETINPUTSTATE
@ THREADSTATE_GETMESSAGETIME
@ THREADSTATE_UPTIMELASTREAD
BOOL APIENTRY NtUserValidateTimerCallback(LPARAM lParam)
DWORD_PTR NTAPI NtUserQueryWindow(HWND hWnd, DWORD Index)
#define CTI_INSENDMESSAGE
#define FNID_BROADCASTSYSTEMMESSAGE
#define GetWin32ClientInfo()
#define QUERY_WINDOW_UNIQUE_PROCESS_ID
DWORD_PTR NTAPI NtUserGetThreadState(DWORD Routine)
BOOL NTAPI NtUserRealInternalGetMessage(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg, BOOL bGMSG)
BOOL NTAPI NtUserRealWaitMessageEx(DWORD dwWakeMask, UINT uTimeout)
#define FNID_SENDNOTIFYMESSAGE
#define EXCEPTION_EXECUTE_HANDLER
BOOL WINAPI ImmTranslateMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lKeyData)
#define memcpy(s1, s2, n)
static _In_ DWORD dwflags
static HANDLE ULONG_PTR dwData
NTSYSAPI NTSTATUS NTAPI ZwCallbackReturn(_In_ PVOID Result, _In_ ULONG ResultLength, _In_ NTSTATUS Status)
NTSYSAPI NTSTATUS NTAPI ZwYieldExecution(VOID)
NTSYSAPI BOOLEAN NTAPI RtlCreateUnicodeStringFromAsciiz(_Out_ PUNICODE_STRING Destination, _In_ PCSZ Source)
_Use_decl_annotations_ NTSTATUS NTAPI RtlUnicodeToMultiByteN(_Out_ PCHAR MbString, _In_ ULONG MbSize, _Out_opt_ PULONG ResultSize, _In_ PCWCH UnicodeString, _In_ ULONG UnicodeSize)
_Use_decl_annotations_ NTSTATUS NTAPI RtlMultiByteToUnicodeN(_Out_ PWCH UnicodeString, _In_ ULONG UnicodeSize, _Out_opt_ PULONG ResultSize, _In_ PCCH MbString, _In_ ULONG MbSize)
NTSYSAPI NTSTATUS NTAPI RtlUnicodeStringToAnsiString(PANSI_STRING DestinationString, PUNICODE_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI VOID NTAPI RtlFreeAnsiString(PANSI_STRING AnsiString)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
NTSYSAPI VOID NTAPI RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceString)
EXTINLINE BOOL NtUserxReplyMessage(LRESULT lResult)
EXTINLINE BOOL NtUserxUnInitMessagePump(VOID)
EXTINLINE DWORD NtUserxGetMessagePos(VOID)
EXTINLINE BOOL NtUserxInitMessagePump(VOID)
EXTINLINE BOOL NtUserxReleaseCapture(VOID)
EXTINLINE DWORD NtUserxGetQueueStatus(UINT flags)
EXTINLINE HANDLE NtUserxMsqSetWakeMask(DWORD_PTR dwWaitMask)
EXTINLINE VOID NtUserxPostQuitMessage(int nExitCode)
EXTINLINE VOID NtUserxMsqClearWakeMask(VOID)
EXTINLINE LPARAM NtUserxGetMessageExtraInfo(VOID)
EXTINLINE LPARAM NtUserxSetMessageExtraInfo(LPARAM lParam)
#define LBS_OWNERDRAWFIXED
#define LBS_OWNERDRAWVARIABLE
#define _SEH2_EXCEPT(...)
#define DECLSPEC_HOTPATCH
LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
WNDPROC pfnClientPrevious
PCLIENTTHREADINFO pClientThreadInfo
RealMsgWaitForMultipleObjectsExProc RealMsgWaitForMultipleObjectsEx
RealGetQueueStatusProc RealGetQueueStatus
RealInternalGetMessageProc NtUserRealInternalGetMessage
RealWaitMessageExProc NtUserRealWaitMessageEx
WNDPROC_OWP PreDefDlgProc
WNDPROC_OWP PostDefDlgProc
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
DWORD WINAPI WaitForMultipleObjectsEx(IN DWORD nCount, IN CONST HANDLE *lpHandles, IN BOOL bWaitAll, IN DWORD dwMilliseconds, IN BOOL bAlertable)
TW_UINT32 TW_UINT16 TW_UINT16 MSG
#define RtlCopyMemory(Destination, Source, Length)
#define STATUS_INFO_LENGTH_MISMATCH
#define WM_COPYGLOBALDATA
#define WM_QUERYDROPOBJECT
void SPY_EnterMessage(INT iFlag, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
BOOL FASTCALL EndUserApiHook(VOID)
BOOL FASTCALL BeginIfHookedUserApiHook(VOID)
BOOL FASTCALL IsMsgOverride(UINT, PUAHOWP)
void SPY_ExitMessage(INT iFlag, HWND hwnd, UINT msg, LRESULT lReturn, WPARAM wParam, LPARAM lParam)
PCALLPROCDATA FASTCALL ValidateCallProc(HANDLE hCallProc)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
_In_ WDFIOTARGET _In_ PWDF_REQUEST_COMPLETION_PARAMS Params
struct _WINDOWPROC_CALLBACK_ARGUMENTS WINDOWPROC_CALLBACK_ARGUMENTS
struct _WINDOWPROC_CALLBACK_ARGUMENTS * PWINDOWPROC_CALLBACK_ARGUMENTS
static int is_pointer_message(UINT message, WPARAM wparam)
BOOL APIENTRY NtUserPeekMessage(PMSG pMsg, HWND hWnd, UINT MsgFilterMin, UINT MsgFilterMax, UINT RemoveMsg)
BOOL APIENTRY NtUserMessageCall(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, ULONG_PTR ResultInfo, DWORD dwType, BOOL Ansi)
static const unsigned int message_pointer_flags[]
BOOL APIENTRY NtUserPostThreadMessage(DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam)
BOOL APIENTRY NtUserTranslateMessage(LPMSG lpMsg, UINT flags)
BOOL APIENTRY NtUserPostMessage(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
LRESULT APIENTRY NtUserDispatchMessage(PMSG UnsafeMsgInfo)
BOOL APIENTRY NtUserGetMessage(PMSG pMsg, HWND hWnd, UINT MsgFilterMin, UINT MsgFilterMax)
static unsigned DdeNumAlloc
struct _USER_MESSAGE_PUMP_ADDRESSES USER_MESSAGE_PUMP_ADDRESSES
LRESULT WINAPI SendMessageTimeoutW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, UINT fuFlags, UINT uTimeout, PDWORD_PTR lpdwResult)
LONG WINAPI IntBroadcastSystemMessage(DWORD dwflags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam, PBSMINFO pBSMInfo, BOOL Ansi)
BOOL WINAPI PeekMessageWorker(PMSG pMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg)
LONG WINAPI BroadcastSystemMessageExW(DWORD dwflags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam, PBSMINFO pBSMInfo)
struct tagDDEPAIR * PDDEPAIR
LONG WINAPI BroadcastSystemMessageA(DWORD dwFlags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam)
BOOL(WINAPI * MESSAGEPUMPHOOKPROC)(BOOL Unregistering, PUSER_MESSAGE_PUMP_ADDRESSES MessagePumpAddresses)
#define CALL_EXTERN_WNDPROC(proc, h, m, w, l)
VOID FASTCALL MessageCleanup(VOID)
static BOOL FASTCALL MsgiUnicodeToAnsiReply(LPMSG AnsiMsg, LPMSG UnicodeMsg, LRESULT *Result)
UINT WINAPI RegisterWindowMessageA(LPCSTR lpString)
BOOL WINAPI DECLSPEC_HOTPATCH GetMessageW(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax)
BOOL WINAPI DECLSPEC_HOTPATCH PeekMessageW(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg)
BOOL WINAPI PostThreadMessageW(DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam)
BOOL WINAPI UnregisterMessagePumpHook(VOID)
DWORD FASTCALL get_input_codepage(void)
static BOOL FASTCALL MsgiAnsiToUnicodeReply(LPMSG UnicodeMsg, LPMSG AnsiMsg, LRESULT *Result)
DWORD WINAPI MsgWaitForMultipleObjectsEx(DWORD nCount, CONST HANDLE *lpHandles, DWORD dwMilliseconds, DWORD dwWakeMask, DWORD dwFlags)
BOOL WINAPI PostMessageA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
static WPARAM FASTCALL map_wparam_char_WtoA(WPARAM wParam, DWORD len)
VOID WINAPI PostQuitMessage(int nExitCode)
BOOL(WINAPI * RealInternalGetMessageProc)(LPMSG, HWND, UINT, UINT, UINT, BOOL)
static LRESULT FASTCALL IntCallWindowProcA(BOOL IsAnsiProc, WNDPROC WndProc, PWND pWnd, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
UINT WINAPI RegisterWindowMessageW(LPCWSTR lpString)
BOOL WINAPI SetMessageQueue(int cMessagesMax)
DWORD WINAPI RealMsgWaitForMultipleObjectsEx(DWORD nCount, CONST HANDLE *pHandles, DWORD dwMilliseconds, DWORD dwWakeMask, DWORD dwFlags)
NTSTATUS WINAPI User32CallWindowProcFromKernel(PVOID Arguments, ULONG ArgumentLength)
LRESULT WINAPI CallWindowProcW(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
static VOID IntConvertMsgToAnsi(LPMSG lpMsg)
LRESULT WINAPI DesktopWndProcA(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
BOOL FASTCALL MessageInit(VOID)
DWORD WINAPI MsgWaitForMultipleObjects(DWORD nCount, CONST HANDLE *lpHandles, BOOL fWaitAll, DWORD dwMilliseconds, DWORD dwWakeMask)
BOOL WINAPI SendMessageCallbackA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, SENDASYNCPROC lpCallBack, ULONG_PTR dwData)
BOOL WINAPI TranslateMessage(CONST MSG *lpMsg)
BOOL WINAPI SendNotifyMessageW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
static VOID FASTCALL MsgiKMToUMCleanup(PMSG KMMsg, PMSG UMMsg)
static WPARAM FASTCALL map_wparam_AtoW(UINT message, WPARAM wparam)
static VOID FASTCALL MsgiUMToKMCleanup(PMSG UMMsg, PMSG KMMsg)
BOOL WINAPI PostMessageW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
BOOL WINAPI IsDialogMessageA(HWND hwndDlg, LPMSG pmsg)
void WINAPI ResetMessagePumpHook(PUSER_MESSAGE_PUMP_ADDRESSES Addresses)
LONG WINAPI BroadcastSystemMessageExA(DWORD dwflags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam, PBSMINFO pBSMInfo)
DWORD(WINAPI * RealGetQueueStatusProc)(UINT flags)
static unsigned DdeNumUsed
static BOOL FASTCALL MsgiUMToKMMessage(PMSG UMMsg, PMSG KMMsg, BOOL Posted)
static CRITICAL_SECTION DdeCrst
LRESULT WINAPI SendMessageTimeoutA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, UINT fuFlags, UINT uTimeout, PDWORD_PTR lpdwResult)
BOOL WINAPI DECLSPEC_HOTPATCH GetMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax)
MESSAGEPUMPHOOKPROC gpfnInitMPH
BOOL FASTCALL DdeAddPair(HGLOBAL ClientMem, HGLOBAL ServerMem)
BOOL WINAPI RegisterMessagePumpHook(MESSAGEPUMPHOOKPROC Hook)
LRESULT WINAPI DECLSPEC_HOTPATCH DispatchMessageA(CONST MSG *lpmsg)
BOOL WINAPI ReplyMessage(LRESULT lResult)
DWORD WINAPI RealGetQueueStatus(UINT flags)
USER_MESSAGE_PUMP_ADDRESSES gmph
LRESULT FASTCALL IntCallWindowProcW(BOOL IsAnsiProc, WNDPROC WndProc, PWND pWnd, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
static BOOL FASTCALL MsgiUnicodeToAnsiMessage(HWND hwnd, LPMSG AnsiMsg, LPMSG UnicodeMsg)
static BOOL FASTCALL combobox_has_strings(HWND hwnd)
DWORD WINAPI InSendMessageEx(LPVOID lpReserved)
LPARAM WINAPI SetMessageExtraInfo(LPARAM lParam)
static LRESULT WINAPI IntCallMessageProc(IN PWND Wnd, IN HWND hWnd, IN UINT Msg, IN WPARAM wParam, IN LPARAM lParam, IN BOOL Ansi)
static BOOL FASTCALL MsgiKMToUMMessage(PMSG KMMsg, PMSG UMMsg)
static BOOL FASTCALL listbox_has_strings(HWND hwnd)
BOOL WINAPI SendNotifyMessageA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
LRESULT WINAPI CallWindowProcA(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
LRESULT WINAPI SendMessageW(HWND Wnd, UINT Msg, WPARAM wParam, LPARAM lParam)
BOOL WINAPI DECLSPEC_HOTPATCH PeekMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg)
static BOOL FASTCALL MsgiKMToUMReply(PMSG KMMsg, PMSG UMMsg, LRESULT *Result)
struct _USER_MESSAGE_PUMP_ADDRESSES * PUSER_MESSAGE_PUMP_ADDRESSES
DWORD WINAPI GetQueueStatus(UINT flags)
BOOL WINAPI TranslateMessageEx(CONST MSG *lpMsg, UINT Flags)
LRESULT WINAPI SendMessageA(HWND Wnd, UINT Msg, WPARAM wParam, LPARAM lParam)
static BOOL FASTCALL MsgiAnsiToUnicodeCleanup(LPMSG UnicodeMsg, LPMSG AnsiMsg)
LRESULT WINAPI DECLSPEC_HOTPATCH DispatchMessageW(CONST MSG *lpmsg)
LONG WINAPI BroadcastSystemMessageW(DWORD dwFlags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam)
BOOL WINAPI SendMessageCallbackW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam, SENDASYNCPROC lpCallBack, ULONG_PTR dwData)
static BOOL FASTCALL MsgiUnicodeToAnsiCleanup(LPMSG AnsiMsg, LPMSG UnicodeMsg)
struct tagDDEPAIR DDEPAIR
BOOL WINAPI PostThreadMessageA(DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam)
HGLOBAL FASTCALL DdeGetPair(HGLOBAL ServerMem)
DWORD(WINAPI * RealMsgWaitForMultipleObjectsExProc)(DWORD nCount, CONST HANDLE *lpHandles, DWORD dwMilliseconds, DWORD dwWakeMask, DWORD dwFlags)
BOOL(WINAPI * RealWaitMessageExProc)(DWORD, UINT)
BOOL WINAPI IsInsideMessagePumpHook()
static BOOL FASTCALL MsgiAnsiToUnicodeMessage(HWND hwnd, LPMSG UnicodeMsg, LPMSG AnsiMsg)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
#define ERROR_MESSAGE_SYNC_ONLY
#define ERROR_INVALID_FLAGS
#define LOCALE_IDEFAULTANSICODEPAGE
#define CBS_OWNERDRAWFIXED
HKL WINAPI GetKeyboardLayout(_In_ DWORD)
#define LB_FINDSTRINGEXACT
void(CALLBACK * SENDASYNCPROC)(HWND, UINT, ULONG_PTR, LRESULT)
#define WH_CALLWNDPROCRET
BOOL WINAPI ReleaseCapture(void)
DWORD WINAPI GetMessagePos(void)
LONG WINAPI GetWindowLongA(_In_ HWND, _In_ int)
BOOL WINAPI IsDialogMessageW(_In_ HWND, _In_ LPMSG)
#define WM_WINDOWPOSCHANGING
#define EM_SETPASSWORDCHAR
#define CBS_OWNERDRAWVARIABLE
LONG WINAPI GetWindowLongW(_In_ HWND, _In_ int)
struct tagCOPYDATASTRUCT * PCOPYDATASTRUCT
#define IS_INTRESOURCE(i)
#define QS_ALLPOSTMESSAGE
HWND WINAPI GetCapture(void)
#define CB_FINDSTRINGEXACT
#define WM_ASKCBFORMATNAME
HWND WINAPI GetDesktopWindow(void)
#define MWMO_INPUTAVAILABLE
#define CB_GETDROPPEDCONTROLRECT
BOOL WINAPI InSendMessage(void)
struct tagCOPYDATASTRUCT COPYDATASTRUCT
LONG WINAPI GetMessageTime(void)
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
BOOL WINAPI GetInputState(void)
#define WM_WINDOWPOSCHANGED
LPARAM WINAPI GetMessageExtraInfo(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
_Must_inspect_result_ _In_ ULONG Flags
_Out_ PCLIENT_ID ClientId
#define RtlUnicodeStringToAnsiSize(String)