From: Rémi Bernon rbernon@codeweavers.com
--- dlls/win32u/class.c | 18 ++ dlls/win32u/main.c | 5 + dlls/win32u/win32syscalls.h | 346 ++++++++++++++++++------------------ dlls/win32u/win32u.spec | 2 +- dlls/wow64win/user.c | 7 + include/ntuser.h | 1 + 6 files changed, 206 insertions(+), 173 deletions(-)
diff --git a/dlls/win32u/class.c b/dlls/win32u/class.c index 8c5f2819a67..c62e920b77e 100644 --- a/dlls/win32u/class.c +++ b/dlls/win32u/class.c @@ -595,6 +595,24 @@ ULONG WINAPI NtUserGetAtomName( ATOM atom, UNICODE_STRING *name ) return size / sizeof(WCHAR); }
+/*********************************************************************** + * NtUserRegisterWindowMessage (win32u.@) + */ +ATOM WINAPI NtUserRegisterWindowMessage( UNICODE_STRING *name ) +{ + RTL_ATOM atom; + + TRACE( "%s\n", debugstr_us(name) ); + + if (!name) + { + RtlSetLastWin32Error( ERROR_INVALID_PARAMETER ); + return 0; + } + if (!set_ntstatus( NtAddAtom( name->Buffer, name->Length, &atom ) )) return 0; + return atom; +} + /*********************************************************************** * NtUserGetClassName (win32u.@) */ diff --git a/dlls/win32u/main.c b/dlls/win32u/main.c index 105606cb968..3f757e9af21 100644 --- a/dlls/win32u/main.c +++ b/dlls/win32u/main.c @@ -2022,6 +2022,11 @@ BOOL SYSCALL_API NtUserRegisterTouchPadCapable( BOOL capable ) SYSCALL_FUNC( NtUserRegisterTouchPadCapable ); }
+ATOM SYSCALL_API NtUserRegisterWindowMessage( UNICODE_STRING *name ) +{ + SYSCALL_FUNC( NtUserRegisterWindowMessage ); +} + BOOL SYSCALL_API NtUserReleaseCapture(void) { SYSCALL_FUNC( NtUserReleaseCapture ); diff --git a/dlls/win32u/win32syscalls.h b/dlls/win32u/win32syscalls.h index 2b22d25a576..287e1e42778 100644 --- a/dlls/win32u/win32syscalls.h +++ b/dlls/win32u/win32syscalls.h @@ -378,92 +378,93 @@ SYSCALL_ENTRY( 0x1176, NtUserRegisterHotKey, 16 ) \ SYSCALL_ENTRY( 0x1177, NtUserRegisterRawInputDevices, 12 ) \ SYSCALL_ENTRY( 0x1178, NtUserRegisterTouchPadCapable, 4 ) \ - SYSCALL_ENTRY( 0x1179, NtUserReleaseCapture, 0 ) \ - SYSCALL_ENTRY( 0x117a, NtUserReleaseDC, 8 ) \ - SYSCALL_ENTRY( 0x117b, NtUserRemoveClipboardFormatListener, 4 ) \ - SYSCALL_ENTRY( 0x117c, NtUserRemoveMenu, 12 ) \ - SYSCALL_ENTRY( 0x117d, NtUserRemoveProp, 8 ) \ - SYSCALL_ENTRY( 0x117e, NtUserReplyMessage, 4 ) \ - SYSCALL_ENTRY( 0x117f, NtUserScrollDC, 28 ) \ - SYSCALL_ENTRY( 0x1180, NtUserScrollWindowEx, 32 ) \ - SYSCALL_ENTRY( 0x1181, NtUserSelectPalette, 12 ) \ - SYSCALL_ENTRY( 0x1182, NtUserSendInput, 12 ) \ - SYSCALL_ENTRY( 0x1183, NtUserSetActiveWindow, 4 ) \ - SYSCALL_ENTRY( 0x1184, NtUserSetAdditionalForegroundBoostProcesses, 12 ) \ - SYSCALL_ENTRY( 0x1185, NtUserSetCapture, 4 ) \ - SYSCALL_ENTRY( 0x1186, NtUserSetCaretBlinkTime, 4 ) \ - SYSCALL_ENTRY( 0x1187, NtUserSetCaretPos, 8 ) \ - SYSCALL_ENTRY( 0x1188, NtUserSetClassLong, 16 ) \ - SYSCALL_ENTRY( 0x1189, NtUserSetClassLongPtr, 16 ) \ - SYSCALL_ENTRY( 0x118a, NtUserSetClassWord, 12 ) \ - SYSCALL_ENTRY( 0x118b, NtUserSetClipboardData, 12 ) \ - SYSCALL_ENTRY( 0x118c, NtUserSetClipboardViewer, 4 ) \ - SYSCALL_ENTRY( 0x118d, NtUserSetCursor, 4 ) \ - SYSCALL_ENTRY( 0x118e, NtUserSetCursorIconData, 16 ) \ - SYSCALL_ENTRY( 0x118f, NtUserSetCursorPos, 8 ) \ - SYSCALL_ENTRY( 0x1190, NtUserSetFocus, 4 ) \ - SYSCALL_ENTRY( 0x1191, NtUserSetForegroundWindow, 4 ) \ - SYSCALL_ENTRY( 0x1192, NtUserSetInternalWindowPos, 16 ) \ - SYSCALL_ENTRY( 0x1193, NtUserSetKeyboardState, 4 ) \ - SYSCALL_ENTRY( 0x1194, NtUserSetLayeredWindowAttributes, 16 ) \ - SYSCALL_ENTRY( 0x1195, NtUserSetMenu, 8 ) \ - SYSCALL_ENTRY( 0x1196, NtUserSetMenuContextHelpId, 8 ) \ - SYSCALL_ENTRY( 0x1197, NtUserSetMenuDefaultItem, 12 ) \ - SYSCALL_ENTRY( 0x1198, NtUserSetObjectInformation, 16 ) \ - SYSCALL_ENTRY( 0x1199, NtUserSetParent, 8 ) \ - SYSCALL_ENTRY( 0x119a, NtUserSetProcessDefaultLayout, 4 ) \ - SYSCALL_ENTRY( 0x119b, NtUserSetProcessDpiAwarenessContext, 8 ) \ - SYSCALL_ENTRY( 0x119c, NtUserSetProcessWindowStation, 4 ) \ - SYSCALL_ENTRY( 0x119d, NtUserSetProgmanWindow, 4 ) \ - SYSCALL_ENTRY( 0x119e, NtUserSetProp, 12 ) \ - SYSCALL_ENTRY( 0x119f, NtUserSetScrollInfo, 16 ) \ - SYSCALL_ENTRY( 0x11a0, NtUserSetShellWindowEx, 8 ) \ - SYSCALL_ENTRY( 0x11a1, NtUserSetSysColors, 12 ) \ - SYSCALL_ENTRY( 0x11a2, NtUserSetSystemMenu, 8 ) \ - SYSCALL_ENTRY( 0x11a3, NtUserSetSystemTimer, 12 ) \ - SYSCALL_ENTRY( 0x11a4, NtUserSetTaskmanWindow, 4 ) \ - SYSCALL_ENTRY( 0x11a5, NtUserSetThreadDesktop, 4 ) \ - SYSCALL_ENTRY( 0x11a6, NtUserSetTimer, 20 ) \ - SYSCALL_ENTRY( 0x11a7, NtUserSetWinEventHook, 32 ) \ - SYSCALL_ENTRY( 0x11a8, NtUserSetWindowContextHelpId, 8 ) \ - SYSCALL_ENTRY( 0x11a9, NtUserSetWindowLong, 16 ) \ - SYSCALL_ENTRY( 0x11aa, NtUserSetWindowLongPtr, 16 ) \ - SYSCALL_ENTRY( 0x11ab, NtUserSetWindowPlacement, 8 ) \ - SYSCALL_ENTRY( 0x11ac, NtUserSetWindowPos, 28 ) \ - SYSCALL_ENTRY( 0x11ad, NtUserSetWindowRgn, 12 ) \ - SYSCALL_ENTRY( 0x11ae, NtUserSetWindowWord, 12 ) \ - SYSCALL_ENTRY( 0x11af, NtUserSetWindowsHookEx, 24 ) \ - SYSCALL_ENTRY( 0x11b0, NtUserShowCaret, 4 ) \ - SYSCALL_ENTRY( 0x11b1, NtUserShowCursor, 4 ) \ - SYSCALL_ENTRY( 0x11b2, NtUserShowOwnedPopups, 8 ) \ - SYSCALL_ENTRY( 0x11b3, NtUserShowScrollBar, 12 ) \ - SYSCALL_ENTRY( 0x11b4, NtUserShowWindow, 8 ) \ - SYSCALL_ENTRY( 0x11b5, NtUserShowWindowAsync, 8 ) \ - SYSCALL_ENTRY( 0x11b6, NtUserSwitchDesktop, 4 ) \ - SYSCALL_ENTRY( 0x11b7, NtUserSystemParametersInfo, 16 ) \ - SYSCALL_ENTRY( 0x11b8, NtUserSystemParametersInfoForDpi, 20 ) \ - SYSCALL_ENTRY( 0x11b9, NtUserThunkedMenuInfo, 8 ) \ - SYSCALL_ENTRY( 0x11ba, NtUserThunkedMenuItemInfo, 24 ) \ - SYSCALL_ENTRY( 0x11bb, NtUserToUnicodeEx, 28 ) \ - SYSCALL_ENTRY( 0x11bc, NtUserTrackMouseEvent, 4 ) \ - SYSCALL_ENTRY( 0x11bd, NtUserTrackPopupMenuEx, 24 ) \ - SYSCALL_ENTRY( 0x11be, NtUserTranslateAccelerator, 12 ) \ - SYSCALL_ENTRY( 0x11bf, NtUserTranslateMessage, 8 ) \ - SYSCALL_ENTRY( 0x11c0, NtUserUnhookWinEvent, 4 ) \ - SYSCALL_ENTRY( 0x11c1, NtUserUnhookWindowsHook, 8 ) \ - SYSCALL_ENTRY( 0x11c2, NtUserUnhookWindowsHookEx, 4 ) \ - SYSCALL_ENTRY( 0x11c3, NtUserUnregisterClass, 12 ) \ - SYSCALL_ENTRY( 0x11c4, NtUserUnregisterHotKey, 8 ) \ - SYSCALL_ENTRY( 0x11c5, NtUserUpdateInputContext, 12 ) \ - SYSCALL_ENTRY( 0x11c6, NtUserUpdateLayeredWindow, 40 ) \ - SYSCALL_ENTRY( 0x11c7, NtUserValidateRect, 8 ) \ - SYSCALL_ENTRY( 0x11c8, NtUserValidateRgn, 8 ) \ - SYSCALL_ENTRY( 0x11c9, NtUserVkKeyScanEx, 8 ) \ - SYSCALL_ENTRY( 0x11ca, NtUserWaitForInputIdle, 12 ) \ - SYSCALL_ENTRY( 0x11cb, NtUserWaitMessage, 0 ) \ - SYSCALL_ENTRY( 0x11cc, NtUserWindowFromDC, 4 ) \ - SYSCALL_ENTRY( 0x11cd, NtUserWindowFromPoint, 8 ) \ - SYSCALL_ENTRY( 0x11ce, __wine_get_icm_profile, 16 ) + SYSCALL_ENTRY( 0x1179, NtUserRegisterWindowMessage, 4 ) \ + SYSCALL_ENTRY( 0x117a, NtUserReleaseCapture, 0 ) \ + SYSCALL_ENTRY( 0x117b, NtUserReleaseDC, 8 ) \ + SYSCALL_ENTRY( 0x117c, NtUserRemoveClipboardFormatListener, 4 ) \ + SYSCALL_ENTRY( 0x117d, NtUserRemoveMenu, 12 ) \ + SYSCALL_ENTRY( 0x117e, NtUserRemoveProp, 8 ) \ + SYSCALL_ENTRY( 0x117f, NtUserReplyMessage, 4 ) \ + SYSCALL_ENTRY( 0x1180, NtUserScrollDC, 28 ) \ + SYSCALL_ENTRY( 0x1181, NtUserScrollWindowEx, 32 ) \ + SYSCALL_ENTRY( 0x1182, NtUserSelectPalette, 12 ) \ + SYSCALL_ENTRY( 0x1183, NtUserSendInput, 12 ) \ + SYSCALL_ENTRY( 0x1184, NtUserSetActiveWindow, 4 ) \ + SYSCALL_ENTRY( 0x1185, NtUserSetAdditionalForegroundBoostProcesses, 12 ) \ + SYSCALL_ENTRY( 0x1186, NtUserSetCapture, 4 ) \ + SYSCALL_ENTRY( 0x1187, NtUserSetCaretBlinkTime, 4 ) \ + SYSCALL_ENTRY( 0x1188, NtUserSetCaretPos, 8 ) \ + SYSCALL_ENTRY( 0x1189, NtUserSetClassLong, 16 ) \ + SYSCALL_ENTRY( 0x118a, NtUserSetClassLongPtr, 16 ) \ + SYSCALL_ENTRY( 0x118b, NtUserSetClassWord, 12 ) \ + SYSCALL_ENTRY( 0x118c, NtUserSetClipboardData, 12 ) \ + SYSCALL_ENTRY( 0x118d, NtUserSetClipboardViewer, 4 ) \ + SYSCALL_ENTRY( 0x118e, NtUserSetCursor, 4 ) \ + SYSCALL_ENTRY( 0x118f, NtUserSetCursorIconData, 16 ) \ + SYSCALL_ENTRY( 0x1190, NtUserSetCursorPos, 8 ) \ + SYSCALL_ENTRY( 0x1191, NtUserSetFocus, 4 ) \ + SYSCALL_ENTRY( 0x1192, NtUserSetForegroundWindow, 4 ) \ + SYSCALL_ENTRY( 0x1193, NtUserSetInternalWindowPos, 16 ) \ + SYSCALL_ENTRY( 0x1194, NtUserSetKeyboardState, 4 ) \ + SYSCALL_ENTRY( 0x1195, NtUserSetLayeredWindowAttributes, 16 ) \ + SYSCALL_ENTRY( 0x1196, NtUserSetMenu, 8 ) \ + SYSCALL_ENTRY( 0x1197, NtUserSetMenuContextHelpId, 8 ) \ + SYSCALL_ENTRY( 0x1198, NtUserSetMenuDefaultItem, 12 ) \ + SYSCALL_ENTRY( 0x1199, NtUserSetObjectInformation, 16 ) \ + SYSCALL_ENTRY( 0x119a, NtUserSetParent, 8 ) \ + SYSCALL_ENTRY( 0x119b, NtUserSetProcessDefaultLayout, 4 ) \ + SYSCALL_ENTRY( 0x119c, NtUserSetProcessDpiAwarenessContext, 8 ) \ + SYSCALL_ENTRY( 0x119d, NtUserSetProcessWindowStation, 4 ) \ + SYSCALL_ENTRY( 0x119e, NtUserSetProgmanWindow, 4 ) \ + SYSCALL_ENTRY( 0x119f, NtUserSetProp, 12 ) \ + SYSCALL_ENTRY( 0x11a0, NtUserSetScrollInfo, 16 ) \ + SYSCALL_ENTRY( 0x11a1, NtUserSetShellWindowEx, 8 ) \ + SYSCALL_ENTRY( 0x11a2, NtUserSetSysColors, 12 ) \ + SYSCALL_ENTRY( 0x11a3, NtUserSetSystemMenu, 8 ) \ + SYSCALL_ENTRY( 0x11a4, NtUserSetSystemTimer, 12 ) \ + SYSCALL_ENTRY( 0x11a5, NtUserSetTaskmanWindow, 4 ) \ + SYSCALL_ENTRY( 0x11a6, NtUserSetThreadDesktop, 4 ) \ + SYSCALL_ENTRY( 0x11a7, NtUserSetTimer, 20 ) \ + SYSCALL_ENTRY( 0x11a8, NtUserSetWinEventHook, 32 ) \ + SYSCALL_ENTRY( 0x11a9, NtUserSetWindowContextHelpId, 8 ) \ + SYSCALL_ENTRY( 0x11aa, NtUserSetWindowLong, 16 ) \ + SYSCALL_ENTRY( 0x11ab, NtUserSetWindowLongPtr, 16 ) \ + SYSCALL_ENTRY( 0x11ac, NtUserSetWindowPlacement, 8 ) \ + SYSCALL_ENTRY( 0x11ad, NtUserSetWindowPos, 28 ) \ + SYSCALL_ENTRY( 0x11ae, NtUserSetWindowRgn, 12 ) \ + SYSCALL_ENTRY( 0x11af, NtUserSetWindowWord, 12 ) \ + SYSCALL_ENTRY( 0x11b0, NtUserSetWindowsHookEx, 24 ) \ + SYSCALL_ENTRY( 0x11b1, NtUserShowCaret, 4 ) \ + SYSCALL_ENTRY( 0x11b2, NtUserShowCursor, 4 ) \ + SYSCALL_ENTRY( 0x11b3, NtUserShowOwnedPopups, 8 ) \ + SYSCALL_ENTRY( 0x11b4, NtUserShowScrollBar, 12 ) \ + SYSCALL_ENTRY( 0x11b5, NtUserShowWindow, 8 ) \ + SYSCALL_ENTRY( 0x11b6, NtUserShowWindowAsync, 8 ) \ + SYSCALL_ENTRY( 0x11b7, NtUserSwitchDesktop, 4 ) \ + SYSCALL_ENTRY( 0x11b8, NtUserSystemParametersInfo, 16 ) \ + SYSCALL_ENTRY( 0x11b9, NtUserSystemParametersInfoForDpi, 20 ) \ + SYSCALL_ENTRY( 0x11ba, NtUserThunkedMenuInfo, 8 ) \ + SYSCALL_ENTRY( 0x11bb, NtUserThunkedMenuItemInfo, 24 ) \ + SYSCALL_ENTRY( 0x11bc, NtUserToUnicodeEx, 28 ) \ + SYSCALL_ENTRY( 0x11bd, NtUserTrackMouseEvent, 4 ) \ + SYSCALL_ENTRY( 0x11be, NtUserTrackPopupMenuEx, 24 ) \ + SYSCALL_ENTRY( 0x11bf, NtUserTranslateAccelerator, 12 ) \ + SYSCALL_ENTRY( 0x11c0, NtUserTranslateMessage, 8 ) \ + SYSCALL_ENTRY( 0x11c1, NtUserUnhookWinEvent, 4 ) \ + SYSCALL_ENTRY( 0x11c2, NtUserUnhookWindowsHook, 8 ) \ + SYSCALL_ENTRY( 0x11c3, NtUserUnhookWindowsHookEx, 4 ) \ + SYSCALL_ENTRY( 0x11c4, NtUserUnregisterClass, 12 ) \ + SYSCALL_ENTRY( 0x11c5, NtUserUnregisterHotKey, 8 ) \ + SYSCALL_ENTRY( 0x11c6, NtUserUpdateInputContext, 12 ) \ + SYSCALL_ENTRY( 0x11c7, NtUserUpdateLayeredWindow, 40 ) \ + SYSCALL_ENTRY( 0x11c8, NtUserValidateRect, 8 ) \ + SYSCALL_ENTRY( 0x11c9, NtUserValidateRgn, 8 ) \ + SYSCALL_ENTRY( 0x11ca, NtUserVkKeyScanEx, 8 ) \ + SYSCALL_ENTRY( 0x11cb, NtUserWaitForInputIdle, 12 ) \ + SYSCALL_ENTRY( 0x11cc, NtUserWaitMessage, 0 ) \ + SYSCALL_ENTRY( 0x11cd, NtUserWindowFromDC, 4 ) \ + SYSCALL_ENTRY( 0x11ce, NtUserWindowFromPoint, 8 ) \ + SYSCALL_ENTRY( 0x11cf, __wine_get_icm_profile, 16 ) #ifdef _WIN64 #define ALL_SYSCALLS \ SYSCALL_ENTRY( 0x1000, NtGdiAbortDoc, 8 ) \ @@ -843,92 +844,93 @@ SYSCALL_ENTRY( 0x1176, NtUserRegisterHotKey, 32 ) \ SYSCALL_ENTRY( 0x1177, NtUserRegisterRawInputDevices, 24 ) \ SYSCALL_ENTRY( 0x1178, NtUserRegisterTouchPadCapable, 8 ) \ - SYSCALL_ENTRY( 0x1179, NtUserReleaseCapture, 0 ) \ - SYSCALL_ENTRY( 0x117a, NtUserReleaseDC, 16 ) \ - SYSCALL_ENTRY( 0x117b, NtUserRemoveClipboardFormatListener, 8 ) \ - SYSCALL_ENTRY( 0x117c, NtUserRemoveMenu, 24 ) \ - SYSCALL_ENTRY( 0x117d, NtUserRemoveProp, 16 ) \ - SYSCALL_ENTRY( 0x117e, NtUserReplyMessage, 8 ) \ - SYSCALL_ENTRY( 0x117f, NtUserScrollDC, 56 ) \ - SYSCALL_ENTRY( 0x1180, NtUserScrollWindowEx, 64 ) \ - SYSCALL_ENTRY( 0x1181, NtUserSelectPalette, 24 ) \ - SYSCALL_ENTRY( 0x1182, NtUserSendInput, 24 ) \ - SYSCALL_ENTRY( 0x1183, NtUserSetActiveWindow, 8 ) \ - SYSCALL_ENTRY( 0x1184, NtUserSetAdditionalForegroundBoostProcesses, 24 ) \ - SYSCALL_ENTRY( 0x1185, NtUserSetCapture, 8 ) \ - SYSCALL_ENTRY( 0x1186, NtUserSetCaretBlinkTime, 8 ) \ - SYSCALL_ENTRY( 0x1187, NtUserSetCaretPos, 16 ) \ - SYSCALL_ENTRY( 0x1188, NtUserSetClassLong, 32 ) \ - SYSCALL_ENTRY( 0x1189, NtUserSetClassLongPtr, 32 ) \ - SYSCALL_ENTRY( 0x118a, NtUserSetClassWord, 24 ) \ - SYSCALL_ENTRY( 0x118b, NtUserSetClipboardData, 24 ) \ - SYSCALL_ENTRY( 0x118c, NtUserSetClipboardViewer, 8 ) \ - SYSCALL_ENTRY( 0x118d, NtUserSetCursor, 8 ) \ - SYSCALL_ENTRY( 0x118e, NtUserSetCursorIconData, 32 ) \ - SYSCALL_ENTRY( 0x118f, NtUserSetCursorPos, 16 ) \ - SYSCALL_ENTRY( 0x1190, NtUserSetFocus, 8 ) \ - SYSCALL_ENTRY( 0x1191, NtUserSetForegroundWindow, 8 ) \ - SYSCALL_ENTRY( 0x1192, NtUserSetInternalWindowPos, 32 ) \ - SYSCALL_ENTRY( 0x1193, NtUserSetKeyboardState, 8 ) \ - SYSCALL_ENTRY( 0x1194, NtUserSetLayeredWindowAttributes, 32 ) \ - SYSCALL_ENTRY( 0x1195, NtUserSetMenu, 16 ) \ - SYSCALL_ENTRY( 0x1196, NtUserSetMenuContextHelpId, 16 ) \ - SYSCALL_ENTRY( 0x1197, NtUserSetMenuDefaultItem, 24 ) \ - SYSCALL_ENTRY( 0x1198, NtUserSetObjectInformation, 32 ) \ - SYSCALL_ENTRY( 0x1199, NtUserSetParent, 16 ) \ - SYSCALL_ENTRY( 0x119a, NtUserSetProcessDefaultLayout, 8 ) \ - SYSCALL_ENTRY( 0x119b, NtUserSetProcessDpiAwarenessContext, 16 ) \ - SYSCALL_ENTRY( 0x119c, NtUserSetProcessWindowStation, 8 ) \ - SYSCALL_ENTRY( 0x119d, NtUserSetProgmanWindow, 8 ) \ - SYSCALL_ENTRY( 0x119e, NtUserSetProp, 24 ) \ - SYSCALL_ENTRY( 0x119f, NtUserSetScrollInfo, 32 ) \ - SYSCALL_ENTRY( 0x11a0, NtUserSetShellWindowEx, 16 ) \ - SYSCALL_ENTRY( 0x11a1, NtUserSetSysColors, 24 ) \ - SYSCALL_ENTRY( 0x11a2, NtUserSetSystemMenu, 16 ) \ - SYSCALL_ENTRY( 0x11a3, NtUserSetSystemTimer, 24 ) \ - SYSCALL_ENTRY( 0x11a4, NtUserSetTaskmanWindow, 8 ) \ - SYSCALL_ENTRY( 0x11a5, NtUserSetThreadDesktop, 8 ) \ - SYSCALL_ENTRY( 0x11a6, NtUserSetTimer, 40 ) \ - SYSCALL_ENTRY( 0x11a7, NtUserSetWinEventHook, 64 ) \ - SYSCALL_ENTRY( 0x11a8, NtUserSetWindowContextHelpId, 16 ) \ - SYSCALL_ENTRY( 0x11a9, NtUserSetWindowLong, 32 ) \ - SYSCALL_ENTRY( 0x11aa, NtUserSetWindowLongPtr, 32 ) \ - SYSCALL_ENTRY( 0x11ab, NtUserSetWindowPlacement, 16 ) \ - SYSCALL_ENTRY( 0x11ac, NtUserSetWindowPos, 56 ) \ - SYSCALL_ENTRY( 0x11ad, NtUserSetWindowRgn, 24 ) \ - SYSCALL_ENTRY( 0x11ae, NtUserSetWindowWord, 24 ) \ - SYSCALL_ENTRY( 0x11af, NtUserSetWindowsHookEx, 48 ) \ - SYSCALL_ENTRY( 0x11b0, NtUserShowCaret, 8 ) \ - SYSCALL_ENTRY( 0x11b1, NtUserShowCursor, 8 ) \ - SYSCALL_ENTRY( 0x11b2, NtUserShowOwnedPopups, 16 ) \ - SYSCALL_ENTRY( 0x11b3, NtUserShowScrollBar, 24 ) \ - SYSCALL_ENTRY( 0x11b4, NtUserShowWindow, 16 ) \ - SYSCALL_ENTRY( 0x11b5, NtUserShowWindowAsync, 16 ) \ - SYSCALL_ENTRY( 0x11b6, NtUserSwitchDesktop, 8 ) \ - SYSCALL_ENTRY( 0x11b7, NtUserSystemParametersInfo, 32 ) \ - SYSCALL_ENTRY( 0x11b8, NtUserSystemParametersInfoForDpi, 40 ) \ - SYSCALL_ENTRY( 0x11b9, NtUserThunkedMenuInfo, 16 ) \ - SYSCALL_ENTRY( 0x11ba, NtUserThunkedMenuItemInfo, 48 ) \ - SYSCALL_ENTRY( 0x11bb, NtUserToUnicodeEx, 56 ) \ - SYSCALL_ENTRY( 0x11bc, NtUserTrackMouseEvent, 8 ) \ - SYSCALL_ENTRY( 0x11bd, NtUserTrackPopupMenuEx, 48 ) \ - SYSCALL_ENTRY( 0x11be, NtUserTranslateAccelerator, 24 ) \ - SYSCALL_ENTRY( 0x11bf, NtUserTranslateMessage, 16 ) \ - SYSCALL_ENTRY( 0x11c0, NtUserUnhookWinEvent, 8 ) \ - SYSCALL_ENTRY( 0x11c1, NtUserUnhookWindowsHook, 16 ) \ - SYSCALL_ENTRY( 0x11c2, NtUserUnhookWindowsHookEx, 8 ) \ - SYSCALL_ENTRY( 0x11c3, NtUserUnregisterClass, 24 ) \ - SYSCALL_ENTRY( 0x11c4, NtUserUnregisterHotKey, 16 ) \ - SYSCALL_ENTRY( 0x11c5, NtUserUpdateInputContext, 24 ) \ - SYSCALL_ENTRY( 0x11c6, NtUserUpdateLayeredWindow, 80 ) \ - SYSCALL_ENTRY( 0x11c7, NtUserValidateRect, 16 ) \ - SYSCALL_ENTRY( 0x11c8, NtUserValidateRgn, 16 ) \ - SYSCALL_ENTRY( 0x11c9, NtUserVkKeyScanEx, 16 ) \ - SYSCALL_ENTRY( 0x11ca, NtUserWaitForInputIdle, 24 ) \ - SYSCALL_ENTRY( 0x11cb, NtUserWaitMessage, 0 ) \ - SYSCALL_ENTRY( 0x11cc, NtUserWindowFromDC, 8 ) \ - SYSCALL_ENTRY( 0x11cd, NtUserWindowFromPoint, 16 ) \ - SYSCALL_ENTRY( 0x11ce, __wine_get_icm_profile, 32 ) + SYSCALL_ENTRY( 0x1179, NtUserRegisterWindowMessage, 8 ) \ + SYSCALL_ENTRY( 0x117a, NtUserReleaseCapture, 0 ) \ + SYSCALL_ENTRY( 0x117b, NtUserReleaseDC, 16 ) \ + SYSCALL_ENTRY( 0x117c, NtUserRemoveClipboardFormatListener, 8 ) \ + SYSCALL_ENTRY( 0x117d, NtUserRemoveMenu, 24 ) \ + SYSCALL_ENTRY( 0x117e, NtUserRemoveProp, 16 ) \ + SYSCALL_ENTRY( 0x117f, NtUserReplyMessage, 8 ) \ + SYSCALL_ENTRY( 0x1180, NtUserScrollDC, 56 ) \ + SYSCALL_ENTRY( 0x1181, NtUserScrollWindowEx, 64 ) \ + SYSCALL_ENTRY( 0x1182, NtUserSelectPalette, 24 ) \ + SYSCALL_ENTRY( 0x1183, NtUserSendInput, 24 ) \ + SYSCALL_ENTRY( 0x1184, NtUserSetActiveWindow, 8 ) \ + SYSCALL_ENTRY( 0x1185, NtUserSetAdditionalForegroundBoostProcesses, 24 ) \ + SYSCALL_ENTRY( 0x1186, NtUserSetCapture, 8 ) \ + SYSCALL_ENTRY( 0x1187, NtUserSetCaretBlinkTime, 8 ) \ + SYSCALL_ENTRY( 0x1188, NtUserSetCaretPos, 16 ) \ + SYSCALL_ENTRY( 0x1189, NtUserSetClassLong, 32 ) \ + SYSCALL_ENTRY( 0x118a, NtUserSetClassLongPtr, 32 ) \ + SYSCALL_ENTRY( 0x118b, NtUserSetClassWord, 24 ) \ + SYSCALL_ENTRY( 0x118c, NtUserSetClipboardData, 24 ) \ + SYSCALL_ENTRY( 0x118d, NtUserSetClipboardViewer, 8 ) \ + SYSCALL_ENTRY( 0x118e, NtUserSetCursor, 8 ) \ + SYSCALL_ENTRY( 0x118f, NtUserSetCursorIconData, 32 ) \ + SYSCALL_ENTRY( 0x1190, NtUserSetCursorPos, 16 ) \ + SYSCALL_ENTRY( 0x1191, NtUserSetFocus, 8 ) \ + SYSCALL_ENTRY( 0x1192, NtUserSetForegroundWindow, 8 ) \ + SYSCALL_ENTRY( 0x1193, NtUserSetInternalWindowPos, 32 ) \ + SYSCALL_ENTRY( 0x1194, NtUserSetKeyboardState, 8 ) \ + SYSCALL_ENTRY( 0x1195, NtUserSetLayeredWindowAttributes, 32 ) \ + SYSCALL_ENTRY( 0x1196, NtUserSetMenu, 16 ) \ + SYSCALL_ENTRY( 0x1197, NtUserSetMenuContextHelpId, 16 ) \ + SYSCALL_ENTRY( 0x1198, NtUserSetMenuDefaultItem, 24 ) \ + SYSCALL_ENTRY( 0x1199, NtUserSetObjectInformation, 32 ) \ + SYSCALL_ENTRY( 0x119a, NtUserSetParent, 16 ) \ + SYSCALL_ENTRY( 0x119b, NtUserSetProcessDefaultLayout, 8 ) \ + SYSCALL_ENTRY( 0x119c, NtUserSetProcessDpiAwarenessContext, 16 ) \ + SYSCALL_ENTRY( 0x119d, NtUserSetProcessWindowStation, 8 ) \ + SYSCALL_ENTRY( 0x119e, NtUserSetProgmanWindow, 8 ) \ + SYSCALL_ENTRY( 0x119f, NtUserSetProp, 24 ) \ + SYSCALL_ENTRY( 0x11a0, NtUserSetScrollInfo, 32 ) \ + SYSCALL_ENTRY( 0x11a1, NtUserSetShellWindowEx, 16 ) \ + SYSCALL_ENTRY( 0x11a2, NtUserSetSysColors, 24 ) \ + SYSCALL_ENTRY( 0x11a3, NtUserSetSystemMenu, 16 ) \ + SYSCALL_ENTRY( 0x11a4, NtUserSetSystemTimer, 24 ) \ + SYSCALL_ENTRY( 0x11a5, NtUserSetTaskmanWindow, 8 ) \ + SYSCALL_ENTRY( 0x11a6, NtUserSetThreadDesktop, 8 ) \ + SYSCALL_ENTRY( 0x11a7, NtUserSetTimer, 40 ) \ + SYSCALL_ENTRY( 0x11a8, NtUserSetWinEventHook, 64 ) \ + SYSCALL_ENTRY( 0x11a9, NtUserSetWindowContextHelpId, 16 ) \ + SYSCALL_ENTRY( 0x11aa, NtUserSetWindowLong, 32 ) \ + SYSCALL_ENTRY( 0x11ab, NtUserSetWindowLongPtr, 32 ) \ + SYSCALL_ENTRY( 0x11ac, NtUserSetWindowPlacement, 16 ) \ + SYSCALL_ENTRY( 0x11ad, NtUserSetWindowPos, 56 ) \ + SYSCALL_ENTRY( 0x11ae, NtUserSetWindowRgn, 24 ) \ + SYSCALL_ENTRY( 0x11af, NtUserSetWindowWord, 24 ) \ + SYSCALL_ENTRY( 0x11b0, NtUserSetWindowsHookEx, 48 ) \ + SYSCALL_ENTRY( 0x11b1, NtUserShowCaret, 8 ) \ + SYSCALL_ENTRY( 0x11b2, NtUserShowCursor, 8 ) \ + SYSCALL_ENTRY( 0x11b3, NtUserShowOwnedPopups, 16 ) \ + SYSCALL_ENTRY( 0x11b4, NtUserShowScrollBar, 24 ) \ + SYSCALL_ENTRY( 0x11b5, NtUserShowWindow, 16 ) \ + SYSCALL_ENTRY( 0x11b6, NtUserShowWindowAsync, 16 ) \ + SYSCALL_ENTRY( 0x11b7, NtUserSwitchDesktop, 8 ) \ + SYSCALL_ENTRY( 0x11b8, NtUserSystemParametersInfo, 32 ) \ + SYSCALL_ENTRY( 0x11b9, NtUserSystemParametersInfoForDpi, 40 ) \ + SYSCALL_ENTRY( 0x11ba, NtUserThunkedMenuInfo, 16 ) \ + SYSCALL_ENTRY( 0x11bb, NtUserThunkedMenuItemInfo, 48 ) \ + SYSCALL_ENTRY( 0x11bc, NtUserToUnicodeEx, 56 ) \ + SYSCALL_ENTRY( 0x11bd, NtUserTrackMouseEvent, 8 ) \ + SYSCALL_ENTRY( 0x11be, NtUserTrackPopupMenuEx, 48 ) \ + SYSCALL_ENTRY( 0x11bf, NtUserTranslateAccelerator, 24 ) \ + SYSCALL_ENTRY( 0x11c0, NtUserTranslateMessage, 16 ) \ + SYSCALL_ENTRY( 0x11c1, NtUserUnhookWinEvent, 8 ) \ + SYSCALL_ENTRY( 0x11c2, NtUserUnhookWindowsHook, 16 ) \ + SYSCALL_ENTRY( 0x11c3, NtUserUnhookWindowsHookEx, 8 ) \ + SYSCALL_ENTRY( 0x11c4, NtUserUnregisterClass, 24 ) \ + SYSCALL_ENTRY( 0x11c5, NtUserUnregisterHotKey, 16 ) \ + SYSCALL_ENTRY( 0x11c6, NtUserUpdateInputContext, 24 ) \ + SYSCALL_ENTRY( 0x11c7, NtUserUpdateLayeredWindow, 80 ) \ + SYSCALL_ENTRY( 0x11c8, NtUserValidateRect, 16 ) \ + SYSCALL_ENTRY( 0x11c9, NtUserValidateRgn, 16 ) \ + SYSCALL_ENTRY( 0x11ca, NtUserVkKeyScanEx, 16 ) \ + SYSCALL_ENTRY( 0x11cb, NtUserWaitForInputIdle, 24 ) \ + SYSCALL_ENTRY( 0x11cc, NtUserWaitMessage, 0 ) \ + SYSCALL_ENTRY( 0x11cd, NtUserWindowFromDC, 8 ) \ + SYSCALL_ENTRY( 0x11ce, NtUserWindowFromPoint, 16 ) \ + SYSCALL_ENTRY( 0x11cf, __wine_get_icm_profile, 32 ) #else #define ALL_SYSCALLS ALL_SYSCALLS32 #endif diff --git a/dlls/win32u/win32u.spec b/dlls/win32u/win32u.spec index 1d32c121e54..9e25f3d8bba 100644 --- a/dlls/win32u/win32u.spec +++ b/dlls/win32u/win32u.spec @@ -1286,7 +1286,7 @@ @ stub NtUserRegisterUserApiHook @ stub NtUserRegisterUserHungAppHandlers @ stub NtUserRegisterWindowArrangementCallout -@ stub NtUserRegisterWindowMessage +@ stdcall -syscall NtUserRegisterWindowMessage(ptr) @ stdcall -syscall NtUserReleaseCapture() @ stdcall -syscall NtUserReleaseDC(long long) @ stub NtUserReleaseDwmHitTestWaiters diff --git a/dlls/wow64win/user.c b/dlls/wow64win/user.c index 4bed2bca086..318adde06fe 100644 --- a/dlls/wow64win/user.c +++ b/dlls/wow64win/user.c @@ -4079,6 +4079,13 @@ NTSTATUS WINAPI wow64_NtUserRemoveClipboardFormatListener( UINT *args ) return NtUserRemoveClipboardFormatListener( hwnd ); }
+NTSTATUS WINAPI wow64_NtUserRegisterWindowMessage( UINT *args ) +{ + UNICODE_STRING *name = get_ptr( &args ); + + return NtUserRegisterWindowMessage( name ); +} + NTSTATUS WINAPI wow64_NtUserRemoveMenu( UINT *args ) { HMENU handle = get_handle( &args ); diff --git a/include/ntuser.h b/include/ntuser.h index 49bf0d03855..6eba130a9a5 100644 --- a/include/ntuser.h +++ b/include/ntuser.h @@ -944,6 +944,7 @@ W32KAPI ATOM WINAPI NtUserRegisterClassExWOW( const WNDCLASSEXW *wc, UNICODE_ W32KAPI BOOL WINAPI NtUserRegisterHotKey( HWND hwnd, INT id, UINT modifiers, UINT vk ); W32KAPI BOOL WINAPI NtUserRegisterRawInputDevices( const RAWINPUTDEVICE *devices, UINT device_count, UINT size ); W32KAPI BOOL WINAPI NtUserRegisterTouchPadCapable( BOOL capable ); +W32KAPI ATOM WINAPI NtUserRegisterWindowMessage( UNICODE_STRING *name ); W32KAPI BOOL WINAPI NtUserReleaseCapture(void); W32KAPI INT WINAPI NtUserReleaseDC( HWND hwnd, HDC hdc ); W32KAPI BOOL WINAPI NtUserRemoveClipboardFormatListener( HWND hwnd );