win32u: Use more consistent NtUserMessageCall constant names.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Jacek Caban 2022-04-08 13:30:22 +02:00 committed by Alexandre Julliard
parent a7dd77209b
commit a94eab5acf
11 changed files with 62 additions and 62 deletions

View File

@ -263,7 +263,7 @@ static LRESULT DEFWND_DefWinProc( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lPa
return NC_HandleNCActivate( hwnd, wParam, lParam );
case WM_NCDESTROY:
return NtUserMessageCall( hwnd, msg, wParam, lParam, 0, FNID_DEFWINDOWPROC, FALSE );
return NtUserMessageCall( hwnd, msg, wParam, lParam, 0, NtUserDefWindowProc, FALSE );
case WM_PRINT:
DEFWND_Print(hwnd, (HDC)wParam, lParam);
@ -518,7 +518,7 @@ static LRESULT DEFWND_DefWinProc( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lPa
case WM_SETICON:
{
LRESULT res = NtUserMessageCall( hwnd, msg, wParam, lParam,
0, FNID_DEFWINDOWPROC, FALSE );
0, NtUserDefWindowProc, FALSE );
if( (GetWindowLongW( hwnd, GWL_STYLE ) & WS_CAPTION) == WS_CAPTION )
NC_HandleNCPaint( hwnd , (HRGN)1 ); /* Repaint caption */
return res;
@ -668,7 +668,7 @@ LRESULT WINAPI DefWindowProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam
{
CREATESTRUCTA *cs = (CREATESTRUCTA *)lParam;
result = NtUserMessageCall( hwnd, msg, wParam, lParam, 0, FNID_DEFWINDOWPROC, TRUE );
result = NtUserMessageCall( hwnd, msg, wParam, lParam, 0, NtUserDefWindowProc, TRUE );
if(cs->style & (WS_HSCROLL | WS_VSCROLL))
{
@ -703,7 +703,7 @@ LRESULT WINAPI DefWindowProcA( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam
break;
case WM_SETTEXT:
result = NtUserMessageCall( hwnd, msg, wParam, lParam, 0, FNID_DEFWINDOWPROC, TRUE );
result = NtUserMessageCall( hwnd, msg, wParam, lParam, 0, NtUserDefWindowProc, TRUE );
if (result && (GetWindowLongW( hwnd, GWL_STYLE ) & WS_CAPTION) == WS_CAPTION)
NC_HandleNCPaint( hwnd , (HRGN)1 ); /* Repaint caption */
break;
@ -850,7 +850,7 @@ LRESULT WINAPI DefWindowProcW(
{
CREATESTRUCTW *cs = (CREATESTRUCTW *)lParam;
result = NtUserMessageCall( hwnd, msg, wParam, lParam, 0, FNID_DEFWINDOWPROC, FALSE );
result = NtUserMessageCall( hwnd, msg, wParam, lParam, 0, NtUserDefWindowProc, FALSE );
if(cs->style & (WS_HSCROLL | WS_VSCROLL))
{
@ -882,7 +882,7 @@ LRESULT WINAPI DefWindowProcW(
break;
case WM_SETTEXT:
result = NtUserMessageCall( hwnd, msg, wParam, lParam, 0, FNID_DEFWINDOWPROC, FALSE );
result = NtUserMessageCall( hwnd, msg, wParam, lParam, 0, NtUserDefWindowProc, FALSE );
if (result && (GetWindowLongW( hwnd, GWL_STYLE ) & WS_CAPTION) == WS_CAPTION)
NC_HandleNCPaint( hwnd , (HRGN)1 ); /* Repaint caption */
break;

View File

@ -602,7 +602,7 @@ LRESULT WINAPI SendMessageTimeoutW( HWND hwnd, UINT msg, WPARAM wparam, LPARAM l
struct send_message_timeout_params params = { .flags = flags, .timeout = timeout };
LRESULT res;
res = NtUserMessageCall( hwnd, msg, wparam, lparam, &params, FNID_SENDMESSAGEWTOOPTION, FALSE );
res = NtUserMessageCall( hwnd, msg, wparam, lparam, &params, NtUserSendMessageTimeout, FALSE );
if (res_ptr) *res_ptr = res;
return params.result;
}
@ -619,12 +619,12 @@ LRESULT WINAPI SendMessageTimeoutA( HWND hwnd, UINT msg, WPARAM wparam, LPARAM l
if (msg != WM_CHAR || WIN_IsCurrentThread( hwnd ))
{
res = NtUserMessageCall( hwnd, msg, wparam, lparam, &params,
FNID_SENDMESSAGEWTOOPTION, TRUE );
NtUserSendMessageTimeout, TRUE );
}
else if (map_wparam_AtoW( msg, &wparam, WMCHAR_MAP_SENDMESSAGE ))
{
res = NtUserMessageCall( hwnd, msg, wparam, lparam, &params,
FNID_SENDMESSAGEWTOOPTION, FALSE );
NtUserSendMessageTimeout, FALSE );
}
if (res_ptr) *res_ptr = res;
@ -637,7 +637,7 @@ LRESULT WINAPI SendMessageTimeoutA( HWND hwnd, UINT msg, WPARAM wparam, LPARAM l
*/
LRESULT WINAPI SendMessageW( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam )
{
return NtUserMessageCall( hwnd, msg, wparam, lparam, NULL, FNID_SENDMESSAGE, FALSE );
return NtUserMessageCall( hwnd, msg, wparam, lparam, NULL, NtUserSendMessage, FALSE );
}
@ -650,10 +650,10 @@ LRESULT WINAPI SendMessageA( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam )
{
if (!map_wparam_AtoW( msg, &wparam, WMCHAR_MAP_SENDMESSAGE ))
return 0;
return NtUserMessageCall( hwnd, msg, wparam, lparam, NULL, FNID_SENDMESSAGE, FALSE );
return NtUserMessageCall( hwnd, msg, wparam, lparam, NULL, NtUserSendMessage, FALSE );
}
return NtUserMessageCall( hwnd, msg, wparam, lparam, NULL, FNID_SENDMESSAGE, TRUE );
return NtUserMessageCall( hwnd, msg, wparam, lparam, NULL, NtUserSendMessage, TRUE );
}
@ -665,7 +665,7 @@ BOOL WINAPI SendNotifyMessageA( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lpara
if (!WIN_IsCurrentThread( hwnd ) && !map_wparam_AtoW( msg, &wparam, WMCHAR_MAP_SENDMESSAGE ))
return FALSE;
return NtUserMessageCall( hwnd, msg, wparam, lparam, 0, FNID_SENDNOTIFYMESSAGE, TRUE );
return NtUserMessageCall( hwnd, msg, wparam, lparam, 0, NtUserSendNotifyMessage, TRUE );
}
@ -674,7 +674,7 @@ BOOL WINAPI SendNotifyMessageA( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lpara
*/
BOOL WINAPI SendNotifyMessageW( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam )
{
return NtUserMessageCall( hwnd, msg, wparam, lparam, 0, FNID_SENDNOTIFYMESSAGE, FALSE );
return NtUserMessageCall( hwnd, msg, wparam, lparam, 0, NtUserSendNotifyMessage, FALSE );
}
@ -689,7 +689,7 @@ BOOL WINAPI SendMessageCallbackA( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lpa
if (!WIN_IsCurrentThread( hwnd ) && !map_wparam_AtoW( msg, &wparam, WMCHAR_MAP_SENDMESSAGE ))
return FALSE;
return NtUserMessageCall( hwnd, msg, wparam, lparam, &params, FNID_SENDMESSAGECALLBACK, TRUE );
return NtUserMessageCall( hwnd, msg, wparam, lparam, &params, NtUserSendMessageCallback, TRUE );
}
@ -700,7 +700,7 @@ BOOL WINAPI SendMessageCallbackW( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lpa
SENDASYNCPROC callback, ULONG_PTR data )
{
struct send_message_callback_params params = { .callback = callback, .data = data };
return NtUserMessageCall( hwnd, msg, wparam, lparam, &params, FNID_SENDMESSAGECALLBACK, FALSE );
return NtUserMessageCall( hwnd, msg, wparam, lparam, &params, NtUserSendMessageCallback, FALSE );
}

View File

@ -1540,7 +1540,7 @@ LRESULT NC_HandleSysCommand( HWND hwnd, WPARAM wParam, LPARAM lParam )
{
TRACE("hwnd %p WM_SYSCOMMAND %lx %lx\n", hwnd, wParam, lParam );
if (!NtUserMessageCall( hwnd, WM_SYSCOMMAND, wParam, lParam, 0, FNID_DEFWINDOWPROC, FALSE ))
if (!NtUserMessageCall( hwnd, WM_SYSCOMMAND, wParam, lParam, 0, NtUserDefWindowProc, FALSE ))
return 0;
switch (wParam & 0xfff0)

View File

@ -365,11 +365,11 @@ const char *SPY_GetVKeyName( WPARAM wparam )
void SPY_EnterMessage( INT flag, HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam )
{
if (TRACE_ON(message)) NtUserMessageCall( hwnd, msg, wparam, lparam, 0, FNID_SPYENTER, flag );
if (TRACE_ON(message)) NtUserMessageCall( hwnd, msg, wparam, lparam, 0, NtUserSpyEnter, flag );
}
void SPY_ExitMessage( INT flag, HWND hwnd, UINT msg, LRESULT lreturn, WPARAM wparam, LPARAM lparam )
{
if (TRACE_ON(message)) NtUserMessageCall( hwnd, msg, wparam, lparam, (void *)lreturn,
FNID_SPYEXIT, flag );
NtUserSpyExit, flag );
}

View File

@ -1332,7 +1332,7 @@ LRESULT WINAPI CallWindowProcA( WNDPROC func, HWND hwnd, UINT msg, WPARAM wParam
params.func = func;
params.result = &result;
if (!NtUserMessageCall( hwnd, msg, wParam, lParam, &params, FNID_CALLWNDPROC, TRUE ))
if (!NtUserMessageCall( hwnd, msg, wParam, lParam, &params, NtUserCallWindowProc, TRUE ))
return 0;
dispatch_win_proc_params( &params );
return result;
@ -1351,7 +1351,7 @@ LRESULT WINAPI CallWindowProcW( WNDPROC func, HWND hwnd, UINT msg, WPARAM wParam
params.func = func;
params.result = &result;
if (!NtUserMessageCall( hwnd, msg, wParam, lParam, &params, FNID_CALLWNDPROC, FALSE ))
if (!NtUserMessageCall( hwnd, msg, wParam, lParam, &params, NtUserCallWindowProc, FALSE ))
return 0;
dispatch_win_proc_params( &params );
return result;

View File

@ -97,7 +97,7 @@ BOOL WINAPI NtUserCloseClipboard(void)
SERVER_END_REQ;
if (viewer) NtUserMessageCall( viewer, WM_DRAWCLIPBOARD, (WPARAM)owner, 0,
0, FNID_SENDNOTIFYMESSAGE, FALSE );
0, NtUserSendNotifyMessage, FALSE );
return ret;
}
@ -336,5 +336,5 @@ void release_clipboard_owner( HWND hwnd )
if (viewer)
NtUserMessageCall( viewer, WM_DRAWCLIPBOARD, (WPARAM)owner, 0,
0, FNID_SENDNOTIFYMESSAGE, FALSE );
0, NtUserSendNotifyMessage, FALSE );
}

View File

@ -1529,13 +1529,13 @@ BOOL set_foreground_window( HWND hwnd, BOOL mouse )
{
if (send_msg_old) /* old window belongs to other thread */
NtUserMessageCall( previous, WM_WINE_SETACTIVEWINDOW, 0, 0,
0, FNID_SENDNOTIFYMESSAGE, FALSE );
0, NtUserSendNotifyMessage, FALSE );
else if (send_msg_new) /* old window belongs to us but new one to other thread */
ret = set_active_window( 0, NULL, mouse, TRUE );
if (send_msg_new) /* new window belongs to other thread */
NtUserMessageCall( hwnd, WM_WINE_SETACTIVEWINDOW, (WPARAM)hwnd, 0,
0, FNID_SENDNOTIFYMESSAGE, FALSE );
0, NtUserSendNotifyMessage, FALSE );
else /* new window belongs to us */
ret = set_active_window( hwnd, NULL, mouse, TRUE );
}

View File

@ -249,7 +249,7 @@ static BOOL dispatch_win_proc_params( struct win_proc_params *params, size_t siz
if (thread_info->recursion_count > MAX_WINPROC_RECURSION) return FALSE;
thread_info->recursion_count++;
KeUserModeCallback( NtUserCallWindowProc, params, size, &ret_ptr, &ret_len );
KeUserModeCallback( NtUserCallWinProc, params, size, &ret_ptr, &ret_len );
thread_info->recursion_count--;
return TRUE;
@ -2531,14 +2531,14 @@ static BOOL broadcast_message( struct send_message_info *info, DWORD_PTR *res_pt
break;
case MSG_NOTIFY:
NtUserMessageCall( list[i], info->msg, info->wparam, info->lparam,
0, FNID_SENDNOTIFYMESSAGE, FALSE );
0, NtUserSendNotifyMessage, FALSE );
break;
case MSG_CALLBACK:
{
struct send_message_callback_params params =
{ .callback = info->callback, .data = info->data };
NtUserMessageCall( list[i], info->msg, info->wparam, info->lparam,
&params, FNID_SENDMESSAGECALLBACK, FALSE );
&params, NtUserSendMessageCallback, FALSE );
break;
}
case MSG_POSTED:
@ -2847,14 +2847,14 @@ LRESULT WINAPI NtUserMessageCall( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lpa
{
switch (type)
{
case FNID_DEFWINDOWPROC:
case NtUserDefWindowProc:
return default_window_proc( hwnd, msg, wparam, lparam, ansi );
case FNID_CALLWNDPROC:
case NtUserCallWindowProc:
return init_win_proc_params( (struct win_proc_params *)result_info, hwnd, msg,
wparam, lparam, ansi );
case FNID_SENDMESSAGE:
case NtUserSendMessage:
return send_window_message( hwnd, msg, wparam, lparam, ansi );
case FNID_SENDMESSAGEWTOOPTION:
case NtUserSendMessageTimeout:
{
struct send_message_timeout_params *params = (void *)result_info;
DWORD_PTR res = 0;
@ -2862,14 +2862,14 @@ LRESULT WINAPI NtUserMessageCall( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lpa
params->timeout, &res, ansi );
return res;
}
case FNID_SENDNOTIFYMESSAGE:
case NtUserSendNotifyMessage:
return send_notify_message( hwnd, msg, wparam, lparam, ansi );
case FNID_SENDMESSAGECALLBACK:
case NtUserSendMessageCallback:
return send_message_callback( hwnd, msg, wparam, lparam, (void *)result_info, ansi );
case FNID_SPYENTER:
case NtUserSpyEnter:
spy_enter_message( ansi, hwnd, msg, wparam, lparam );
return 0;
case FNID_SPYEXIT:
case NtUserSpyExit:
spy_exit_message( ansi, hwnd, msg, (LPARAM)result_info, wparam, lparam );
return 0;
default:

View File

@ -425,30 +425,30 @@ static void test_message_call(void)
hwnd = CreateWindowExW( 0, L"TestClass", NULL, WS_POPUP, 0,0,0,0,0,0,0, NULL );
res = NtUserMessageCall( hwnd, WM_USER, 1, 2, (void *)0xdeadbeef, FNID_SENDMESSAGE, FALSE );
res = NtUserMessageCall( hwnd, WM_USER, 1, 2, (void *)0xdeadbeef, NtUserSendMessage, FALSE );
ok( res == 3, "res = %Iu\n", res );
res = NtUserMessageCall( hwnd, WM_USER, 1, 2, (void *)0xdeadbeef, FNID_SENDMESSAGE, TRUE );
res = NtUserMessageCall( hwnd, WM_USER, 1, 2, (void *)0xdeadbeef, NtUserSendMessage, TRUE );
ok( res == 3, "res = %Iu\n", res );
res = NtUserMessageCall( hwnd, WM_SETTEXT, 0, (LPARAM)L"test", NULL, FNID_SENDMESSAGE, FALSE );
res = NtUserMessageCall( hwnd, WM_SETTEXT, 0, (LPARAM)L"test", NULL, NtUserSendMessage, FALSE );
ok( res == 6, "res = %Iu\n", res );
res = NtUserMessageCall( hwnd, WM_SETTEXT, 0, (LPARAM)"test", NULL, FNID_SENDMESSAGE, TRUE );
res = NtUserMessageCall( hwnd, WM_SETTEXT, 0, (LPARAM)"test", NULL, NtUserSendMessage, TRUE );
ok( res == 6, "res = %Iu\n", res );
SetLastError( 0xdeadbeef );
res = NtUserMessageCall( UlongToHandle(0xdeadbeef), WM_USER, 1, 2, 0, FNID_SENDMESSAGE, TRUE );
res = NtUserMessageCall( UlongToHandle(0xdeadbeef), WM_USER, 1, 2, 0, NtUserSendMessage, TRUE );
ok( !res, "res = %Iu\n", res );
ok( GetLastError() == ERROR_INVALID_WINDOW_HANDLE, "GetLastError() = %lu\n", GetLastError());
res = NtUserMessageCall( hwnd, WM_USER + 1, 0, large_lparam, 0, FNID_SENDMESSAGE, FALSE );
res = NtUserMessageCall( hwnd, WM_USER + 1, 0, large_lparam, 0, NtUserSendMessage, FALSE );
ok( res == large_lparam, "res = %Iu\n", res );
smp.flags = 0;
smp.timeout = 10;
smp.result = 0xdeadbeef;
res = NtUserMessageCall( hwnd, WM_USER, 1, 2, &smp, FNID_SENDMESSAGEWTOOPTION, FALSE );
res = NtUserMessageCall( hwnd, WM_USER, 1, 2, &smp, NtUserSendMessageTimeout, FALSE );
ok( res == 3, "res = %Iu\n", res );
ok( smp.result == 1, "smp.result = %Iu\n", smp.result );
@ -456,16 +456,16 @@ static void test_message_call(void)
smp.timeout = 10;
smp.result = 0xdeadbeef;
res = NtUserMessageCall( hwnd, WM_USER + 1, 0, large_lparam,
&smp, FNID_SENDMESSAGEWTOOPTION, FALSE );
&smp, NtUserSendMessageTimeout, FALSE );
ok( res == large_lparam, "res = %Iu\n", res );
ok( smp.result == 1, "smp.result = %Iu\n", smp.result );
res = NtUserMessageCall( hwnd, WM_USER, 1, 2, (void *)0xdeadbeef,
FNID_SENDNOTIFYMESSAGE, FALSE );
NtUserSendNotifyMessage, FALSE );
ok( res == 1, "res = %Iu\n", res );
res = NtUserMessageCall( hwnd, WM_USER, 1, 2, &callback_params,
FNID_SENDMESSAGECALLBACK, FALSE );
NtUserSendMessageCallback, FALSE );
ok( res == 1, "res = %Iu\n", res );
DestroyWindow( hwnd );
@ -486,7 +486,7 @@ static void test_window_text(void)
ok( len == 0, "len = %d\n", len );
ok( !buf[0], "buf = %s\n", wine_dbgstr_w(buf) );
res = NtUserMessageCall( hwnd, WM_SETTEXT, 0, (LPARAM)L"test", 0, FNID_DEFWINDOWPROC, FALSE );
res = NtUserMessageCall( hwnd, WM_SETTEXT, 0, (LPARAM)L"test", 0, NtUserDefWindowProc, FALSE );
ok( res == 1, "res = %Id\n", res );
memset( buf, 0xcc, sizeof(buf) );
@ -494,7 +494,7 @@ static void test_window_text(void)
ok( len == 4, "len = %d\n", len );
ok( !lstrcmpW( buf, L"test" ), "buf = %s\n", wine_dbgstr_w(buf) );
res = NtUserMessageCall( hwnd, WM_SETTEXT, 0, (LPARAM)"TestA", 0, FNID_DEFWINDOWPROC, TRUE );
res = NtUserMessageCall( hwnd, WM_SETTEXT, 0, (LPARAM)"TestA", 0, NtUserDefWindowProc, TRUE );
ok( res == 1, "res = %Id\n", res );
memset( buf, 0xcc, sizeof(buf) );

View File

@ -3258,7 +3258,7 @@ BOOL WINAPI NtUserSetWindowPos( HWND hwnd, HWND after, INT x, INT y, INT cx, INT
if (flags & SWP_ASYNCWINDOWPOS)
return NtUserMessageCall( winpos.hwnd, WM_WINE_SETWINDOWPOS, 0, (LPARAM)&winpos,
0, FNID_SENDNOTIFYMESSAGE, FALSE );
0, NtUserSendNotifyMessage, FALSE );
else
return send_message( winpos.hwnd, WM_WINE_SETWINDOWPOS, 0, (LPARAM)&winpos );
}
@ -4120,7 +4120,7 @@ BOOL WINAPI NtUserShowWindowAsync( HWND hwnd, INT cmd )
return show_window( full_handle, cmd );
return NtUserMessageCall( hwnd, WM_WINE_SHOWWINDOW, cmd, 0, 0,
FNID_SENDNOTIFYMESSAGE, FALSE );
NtUserSendNotifyMessage, FALSE );
}
/***********************************************************************
@ -4317,7 +4317,7 @@ LRESULT destroy_window( HWND hwnd )
destroy_window( children[i] );
else
NtUserMessageCall( children[i], WM_WINE_DESTROYWINDOW, 0, 0,
0, FNID_SENDNOTIFYMESSAGE, FALSE );
0, NtUserSendNotifyMessage, FALSE );
}
free( children );
}
@ -4858,7 +4858,7 @@ HWND WINAPI NtUserCreateWindowEx( DWORD ex_style, UNICODE_STRING *class_name,
TRACE( "hwnd %p cs %d,%d %dx%d %s\n", hwnd, cs.x, cs.y, cs.cx, cs.cy, wine_dbgstr_rect(&rect) );
*client_cs = cs;
if (!NtUserMessageCall( hwnd, WM_NCCREATE, 0, (LPARAM)client_cs, NULL, FNID_SENDMESSAGE, ansi ))
if (!NtUserMessageCall( hwnd, WM_NCCREATE, 0, (LPARAM)client_cs, NULL, NtUserSendMessage, ansi ))
{
WARN( "%p: aborted by WM_NCCREATE\n", hwnd );
goto failed;
@ -4890,7 +4890,7 @@ HWND WINAPI NtUserCreateWindowEx( DWORD ex_style, UNICODE_STRING *class_name,
else goto failed;
/* send WM_CREATE */
if (NtUserMessageCall( hwnd, WM_CREATE, 0, (LPARAM)client_cs, 0, FNID_SENDMESSAGE, ansi ) == -1)
if (NtUserMessageCall( hwnd, WM_CREATE, 0, (LPARAM)client_cs, 0, NtUserSendMessage, ansi ) == -1)
goto failed;
cs = *client_cs;

View File

@ -30,7 +30,7 @@ enum
NtUserCallEnumDisplayMonitor,
NtUserCallSendAsyncCallback,
NtUserCallWinEventHook,
NtUserCallWindowProc,
NtUserCallWinProc,
NtUserCallWindowsHook,
NtUserLoadDriver,
/* win16 hooks */
@ -240,15 +240,15 @@ enum
/* NtUserMessageCall codes */
enum
{
FNID_DEFWINDOWPROC = 0x029e,
FNID_CALLWNDPROC = 0x02ab,
FNID_SENDMESSAGE = 0x02b1,
FNID_SENDMESSAGEWTOOPTION = 0x02b3,
FNID_SENDNOTIFYMESSAGE = 0x02b7,
FNID_SENDMESSAGECALLBACK = 0x02b8,
NtUserDefWindowProc = 0x029e,
NtUserCallWindowProc = 0x02ab,
NtUserSendMessage = 0x02b1,
NtUserSendMessageTimeout = 0x02b3,
NtUserSendNotifyMessage = 0x02b7,
NtUserSendMessageCallback = 0x02b8,
/* Wine-specific exports */
FNID_SPYENTER = 0x0300,
FNID_SPYEXIT = 0x0301,
NtUserSpyEnter = 0x0300,
NtUserSpyExit = 0x0301,
};
struct send_message_timeout_params