Add functions (mostly undocumented ones) to user32 (8.1)
The additions were extracted from a .def file produced by gendef on 8.1.
Some functions were moved around to preserve alphabetic order.
diff --git a/mingw-w64-crt/lib32/user32.def b/mingw-w64-crt/lib32/user32.def
index 2b42077..c20d168 100755
--- a/mingw-w64-crt/lib32/user32.def
+++ b/mingw-w64-crt/lib32/user32.def
@@ -2,6 +2,7 @@
EXPORTS
;ord_1500@16 @1500
;ord_1501@4 @1501
+;ord_1502@12 @1502
ActivateKeyboardLayout@8
AddClipboardFormatListener@4
AdjustWindowRect@12
@@ -72,9 +73,12 @@
CharUpperBuffW@8
CharUpperW@4
CheckDesktopByThreadId@4
+CheckDBCSEnabledExt@0
CheckDlgButton@12
CheckMenuItem@12
CheckMenuRadioItem@20
+CheckProcessForClipboardAccess@8
+CheckProcessSession@4
CheckRadioButton@16
CheckWindowThreadDesktop@8
ChildWindowFromPoint@12
@@ -101,6 +105,7 @@
CreateAcceleratorTableW@8
CreateCaret@16
CreateCursor@28
+CreateDCompositionHwndTarget@12
CreateDesktopA@24
CreateDesktopExA@32
CreateDesktopExW@32
@@ -121,6 +126,8 @@
CreateSystemThreads@16 ; ReactOS has the @8 variant
CreateWindowExA@48
CreateWindowExW@48
+CreateWindowInBand@52
+CreateWindowIndirect@4
CreateWindowStationA@16
CreateWindowStationW@16
CsrBroadcastSystemMessageExW@24
@@ -168,11 +175,13 @@
DefWindowProcA@16
DefWindowProcW@16
DeferWindowPos@32
+DeferWindowPosAndBand@36
DeleteMenu@12
DeregisterShellHookWindow@4
DestroyAcceleratorTable@4
DestroyCaret@0
DestroyCursor@4
+DestroyDCompositionHwndTarget@8
DestroyIcon@4
DestroyMenu@4
DestroyReasons@4
@@ -220,14 +229,21 @@
DrawTextExW@24
DrawTextW@20
DwmGetDxSharedSurface@24
-DwmStartRedirection@4
+DwmGetRemoteSessionOcclusionEvent@0
+DwmGetRemoteSessionOcclusionState@0
+DwmLockScreenUpdates@4
+DwmStartRedirection@8 ; Mentioned on http://habrahabr.ru/post/145174/ , enables GDI virtualization (for security purposes)
DwmStopRedirection@0
+DwmValidateWindow@8
EditWndProc@16
EmptyClipboard@0
EnableMenuItem@12
+EnableMouseInPointer@4
EnableScrollBar@12
+EnableSessionForMMCSS@4
EnableWindow@8
EndDeferWindowPos@4
+EndDeferWindowPosEx@8
EndDialog@8
EndMenu@0
EndPaint@8
@@ -254,6 +270,8 @@
EnumWindowStationsW@8
EnumWindows@8
EqualRect@8
+EvaluateProximityToPolygon@16
+EvaluateProximityToRect@12
ExcludeUpdateRgn@8
ExitWindowsEx@8
FillRect@12
@@ -274,6 +292,8 @@
GetAppCompatFlags2@4
GetAppCompatFlags@8 ; ReactOS has @4 version http://doxygen.reactos.org/d9/d71/undocuser_8h_a9b76cdc68c523a061c86a40367049ed2.html
GetAsyncKeyState@4
+GetAutoRotationState@4
+GetCIMSSM@4
GetCapture@0
GetCaretBlinkTime@0
GetCaretPos@4
@@ -288,6 +308,7 @@
GetClassWord@8
GetClientRect@8
GetClipCursor@4
+GetClipboardAccessToken@8
GetClipboardData@4
GetClipboardFormatNameA@12
GetClipboardFormatNameW@12
@@ -295,14 +316,17 @@
GetClipboardSequenceNumber@0
GetClipboardViewer@0
GetComboBoxInfo@8
+GetCurrentInputMessageSource@4
GetCursor@0
GetCursorFrameInfo@20
GetCursorInfo@4
GetCursorPos@4
GetDC@4
GetDCEx@12
+GetDesktopID@8
GetDesktopWindow@0
GetDialogBaseUnits@0
+GetDisplayAutoRotationPreferences@4
GetDisplayConfigBufferSizes@12
GetDlgCtrlID@4
GetDlgItem@8
@@ -310,6 +334,7 @@
GetDlgItemTextA@16
GetDlgItemTextW@16
GetDoubleClickTime@0
+GetDpiForMonitorInternal@16
GetFocus@0
GetForegroundWindow@0
GetGUIThreadInfo@8
@@ -368,8 +393,29 @@
GetOpenClipboardWindow@0
GetParent@4
GetPhysicalCursorPos@4
+GetPointerCursorId@8
+GetPointerDevice@8
+GetPointerDeviceCursors@12
+GetPointerDeviceProperties@12
+GetPointerDeviceRects@12
+GetPointerDevices@8
+GetPointerFrameInfo@12
+GetPointerFrameInfoHistory@16
+GetPointerFramePenInfo@12
+GetPointerFramePenInfoHistory@16
+GetPointerFrameTouchInfo@12
+GetPointerFrameTouchInfoHistory@16
+GetPointerInfo@8
+GetPointerInfoHistory@12
+GetPointerInputTransform@12
+GetPointerPenInfo@8
+GetPointerPenInfoHistory@12
+GetPointerTouchInfo@8
+GetPointerTouchInfoHistory@12
+GetPointerType@8
GetPriorityClipboardFormat@8
GetProcessDefaultLayout@4
+GetProcessDpiAwarenessInternal@8
GetProcessWindowStation@0
GetProgmanWindow@0
GetPropA@8
@@ -380,6 +426,7 @@
GetRawInputDeviceInfoA@16
GetRawInputDeviceInfoW@16
GetRawInputDeviceList@12
+GetRawPointerDeviceData@20
GetReasonTitleFromReasonCode@12
GetRegisteredRawInputDevices@12
GetQueueStatus@4
@@ -402,6 +449,7 @@
GetTopLevelWindow@4
GetTopWindow@4
GetTouchInputInfo@16
+GetUnpredictedMessagePos@0
GetUpdateRect@12
GetUpdateRgn@12
GetUpdatedClipboardFormats@12
@@ -410,11 +458,13 @@
GetUserObjectSecurity@20
GetWinStationInfo@4
GetWindow@8
+GetWindowBand@8
GetWindowCompositionAttribute@8
GetWindowCompositionInfo@8
GetWindowContextHelpId@4
GetWindowDC@4
GetWindowDisplayAffinity@8
+GetWindowFeedbackSetting@20
GetWindowInfo@8
GetWindowLongA@8
GetWindowLongW@8
@@ -439,23 +489,35 @@
HideCaret@4
HiliteMenuItem@16
HungWindowFromGhostWindow@4
+IMPGetIMEA@8
+IMPGetIMEW@8
+IMPQueryIMEA@4
+IMPQueryIMEW@4
+IMPSetIMEA@8
+IMPSetIMEW@8
ImpersonateDdeClientWindow@8
InSendMessage@0
InSendMessageEx@4
InflateRect@12
InitializeLpkHooks@4
InitializeWin32EntryTable@4
+InitializeTouchInjection@8
+InjectTouchInput@8
InsertMenuA@20
InsertMenuItemA@16
InsertMenuItemW@16
InsertMenuW@20
InternalGetWindowIcon@8
+;ord_2001@4 @2001
+;ord_2002@4 @2002
InternalGetWindowText@12
IntersectRect@12
+;ord_2005@4 @2005
InvalidateRect@12
InvalidateRgn@12
InvertRect@8
IsCharAlphaA@4
+;ord_2010@16 @2010
IsCharAlphaNumericA@4
IsCharAlphaNumericW@4
IsCharAlphaW@4
@@ -472,9 +534,13 @@
IsGUIThread@4
IsHungAppWindow@4
IsIconic@4
+IsImmersiveProcess@4
+IsInDesktopWindowBand@4
IsMenu@4
IsProcess16Bit@0
+IsMouseInPointerEnabled@0
IsProcessDPIAware@0
+IsQueueAttached@0
IsRectEmpty@4
IsSETEnabled@0
IsServerSideWindow@4
@@ -524,9 +590,11 @@
LockWindowUpdate@4
LockWorkStation@0
LogicalToPhysicalPoint@8
+LogicalToPhysicalPointForPerMonitorDPI@8
LookupIconIdFromDirectory@8
LookupIconIdFromDirectoryEx@20
MBToWCSEx@24
+MBToWCSExt@20
MB_GetString@4
MapDialogRect@8
MapVirtualKeyA@8
@@ -571,12 +639,14 @@
OpenWindowStationA@12
OpenWindowStationW@12
PackDDElParam@12
+PackTouchHitTestingProximityEvaluation@8
PaintDesktop@4
PaintMenuBar@24
PaintMonitor@12
PeekMessageA@20
PeekMessageW@20
PhysicalToLogicalPoint@8
+PhysicalToLogicalPointForPerMonitorDPI@8
PostMessageA@16
PostMessageW@16
PostQuitMessage@4
@@ -591,6 +661,7 @@
PrivateSetRipFlags@8
PrivateRegisterICSProc@4
PtInRect@12
+QueryBSDRWindow@0
QueryDisplayConfig@24
QuerySendMessage@4
QueryUserCounters@20
@@ -602,6 +673,7 @@
ReasonCodeNeedsComment@4
RecordShutdownReason@4
RedrawWindow@16
+RegisterBSDRWindow@8
RegisterClassA@4
RegisterClassExA@4
RegisterClassExW@4
@@ -617,13 +689,17 @@
RegisterPowerSettingNotification@12
RegisterLogonProcess@8
RegisterMessagePumpHook@4
+RegisterPointerDeviceNotifications@8
+RegisterPointerInputTarget@8
RegisterPowerSettingNotification@12
RegisterRawInputDevices@12
RegisterServicesProcess@4
-RegisterSessionPort@8
+RegisterSessionPort@4 ; Undocumented, rumored to be related to ALPC - http://blogs.msdn.com/b/ntdebugging/archive/2007/07/26/lpc-local-procedure-calls-part-1-architecture.aspx
RegisterShellHookWindow@4
+RegisterSuspendResumeNotification@8
RegisterSystemThread@8
RegisterTasklist@4
+RegisterTouchHitTestingWindow@8
RegisterTouchWindow@8
RegisterUserApiHook@4 ; Prototype changed in 2003 - https://www.reactos.org/wiki/Techwiki:RegisterUserApiHook
RegisterWindowMessageA@4
@@ -644,6 +720,8 @@
ScrollWindowEx@32
SendDlgItemMessageA@20
SendDlgItemMessageW@20
+SendIMEMessageExA@8
+SendIMEMessageExW@8
SendInput@12
SendMessageA@16
SendMessageCallbackA@24
@@ -663,11 +741,13 @@
SetClipboardData@8
SetClipboardViewer@4
SetConsoleReserveKeys@8
+SetCoalescableTimer@20
SetCursor@4
SetCursorContents@8
SetCursorPos@8
SetDebugErrorLevel@4
SetDeskWallpaper@4
+SetDisplayAutoRotationPreferences@4
SetDisplayConfig@20
SetDlgItemInt@16
SetDlgItemTextA@12
@@ -676,6 +756,7 @@
SetFocus@4
SetForegroundWindow@4
SetGestureConfig@20
+SetImmersiveBackgroundWindow@4
SetInternalWindowPos@16
SetKeyboardState@4
SetLastErrorEx@8
@@ -698,6 +779,8 @@
SetPhysicalCursorPos@8
SetProcessDPIAware@0
SetProcessDefaultLayout@4
+SetProcessDpiAwarenessInternal@4
+SetProcessRestrictionExemption@4
SetProcessWindowStation@4
SetProgmanWindow@4
SetPropA@12
@@ -716,14 +799,18 @@
SetSystemTimer@16
SetTaskmanWindow@4
SetThreadDesktop@4
+SetThreadInputBlocked@8
SetTimer@16
SetUserObjectInformationA@16
SetUserObjectInformationW@16
SetUserObjectSecurity@12
SetWinEventHook@28
+SetWindowBand@12
SetWindowCompositionAttribute@8
+SetWindowCompositionTransition@28
SetWindowContextHelpId@8
SetWindowDisplayAffinity@8
+SetWindowFeedbackSetting@20
SetWindowLongA@12
SetWindowLongW@12
SetWindowPlacement@8
@@ -757,12 +844,14 @@
ShutdownBlockReasonCreate@8
ShutdownBlockReasonDestroy@4
ShutdownBlockReasonQuery@12
+SignalRedirectionStartComplete@0
+SkipPointerFrameMessages@4
SoftModalMessageBox@4
SoundSentry@0
SubtractRect@12
SwapMouseButton@4
SwitchDesktop@4
-SwitchDesktopWithFade@8
+SwitchDesktopWithFade@12 ; Same as SwithDesktop(), only with fade (done at log-in), only usable by winlogon - http://blog.airesoft.co.uk/2010/08/things-microsoft-can-do-that-you-cant/
SwitchToThisWindow@8
SystemParametersInfoA@16
SystemParametersInfoW@16
@@ -795,14 +884,18 @@
UnregisterDeviceNotification@4
UnregisterHotKey@8
UnregisterMessagePumpHook@0
+UnregisterPointerInputTarget@8
UnregisterPowerSettingNotification@4
UnregisterSessionPort@0
+UnregisterSuspendResumeNotification@4
UnregisterTouchWindow@4
UnregisterUserApiHook@0
+UpdateDefaultDesktopThumbnail@20
UpdateLayeredWindow@36
UpdateLayeredWindowIndirect@8
UpdatePerUserSystemParameters@4 ; Undocumented, seems to apply certain registry settings to desktop, etc. ReactOS has @8 version - http://doxygen.reactos.org/d0/d92/win32ss_2user_2user32_2misc_2misc_8c_a1ff565f0af6bac6dce604f9f4473fe79.html ; @4 is rumored to be without the first DWORD
UpdateWindow@4
+UpdateWindowInputSinkHints@8
UpdateWindowTransform@12
User32InitializeImmEntryTable@4
UserClientDllInitialize@12
@@ -820,8 +913,11 @@
VkKeyScanExW@8
VkKeyScanW@4
WCSToMBEx@24
+WINNLSEnableIME@8
+WINNLSGetEnableStatus@4
WINNLSGetIMEHotkey@4
WaitForInputIdle@8
+WaitForRedirectionStartComplete@0
WaitMessage@0
Win32PoolAllocationStats@24
WinHelpA@16
@@ -841,3 +937,62 @@
;ord_2500@16 @2500
;ord_2501@12 @2501
;ord_2502@8 @2502
+;ord_2503@24 @2503
+;ord_2504@8 @2504
+;ord_2505@8 @2505
+;ord_2506@12 @2506
+;ord_2507@4 @2507
+;ord_2508@8 @2508
+;ord_2509@4 @2509
+;ord_2510@12 @2510
+;ord_2511@8 @2511
+;ord_2512@12 @2512
+;ord_2513@4 @2513
+;ord_2514@8 @2514
+;ord_2515@8 @2515
+;ord_2516@12 @2516
+;ord_2517@4 @2517
+;ord_2518@0 @2518
+;ord_2519@4 @2519
+;ord_2520@0 @2520
+;ord_2521@8 @2521
+;ord_2522@4 @2522
+;ord_2523@8 @2523
+;ord_2524@8 @2524
+;ord_2525@12 @2525
+;ord_2526@12 @2526
+;ord_2527@12 @2527
+IsThreadMessageQueueAttached@4
+;ord_2529@4 @2529
+;ord_2530@8 @2530
+;ord_2531@16 @2531
+;ord_2532@8 @2532
+;ord_2533@4 @2533
+;ord_2534@8 @2534
+;ord_2535@0 @2535
+;ord_2536@8 @2536
+;ord_2537@16 @2537
+;ord_2538@4 @2538
+;ord_2539@4 @2539
+;ord_2540@4 @2540
+;ord_2541@0 @2541
+;ord_2544@4 @2544
+;ord_2545@8 @2545
+;ord_2546@4 @2546
+;ord_2547@4 @2547
+;ord_2548@4 @2548
+;ord_2549@4 @2549
+;ord_2550@8 @2550
+;ord_2551@20 @2551
+;ord_2552@8 @2552
+;ord_2553@32 @2553
+;ord_2554@12 @2554
+;ord_2555@16 @2555
+;ord_2556@8 @2556
+;ord_2557@12 @2557
+;ord_2558@12 @2558
+;ord_2559@16 @2559
+;ord_2560@20 @2560
+;ord_2561@0 @2561
+;ord_2562@0 @2562
+;ord_2563@0 @2563