1 #ifndef __WIN32K_NTUSER_H
2 #define __WIN32K_NTUSER_H
5 NtUserGetSystemMetrics(ULONG Index
);
8 NtUserGetClassLong(HWND hWnd
, DWORD Offset
, BOOL Ansi
);
11 NtUserGetWindowLong(HWND hWnd
, DWORD Index
, BOOL Ansi
);
14 NtUserReleaseDC(HWND hWnd
, HDC hDc
);
17 NtUserGetWindowRect(HWND hWnd
, LPRECT Rect
);
20 NtUserGetClientRect(HWND hWnd
, LPRECT Rect
);
23 NtUserGetProp(HWND hWnd
, ATOM Atom
);
26 NtUserGetClientOrigin(HWND hWnd
, LPPOINT Point
);
29 NtUserGetDesktopWindow();
33 NtUserAcquireOrReleaseInputOwnership(
38 NtUserActivateKeyboardLayout(
44 NtUserAlterWindowStyle(
51 NtUserAttachThreadInput(
57 NtUserBeginPaint(HWND hWnd
, PAINTSTRUCT
* lPs
);
92 PULONG pRequiredSize
);
108 #define HWNDLOCK_ROUTINE_ARRANGEICONICWINDOWS 0x54
109 #define HWNDLOCK_ROUTINE_DRAWMENUBAR 0x55
110 #define HWNDLOCK_ROUTINE_REDRAWFRAME 0x58
111 #define HWNDLOCK_ROUTINE_SETFOREGROUNDWINDOW 0x5B
112 #define HWNDLOCK_ROUTINE_UPDATEWINDOW 0x5E
119 #define HWNDOPT_ROUTINE_SETPROGMANWINDOW 0x4A
120 #define HWNDOPT_ROUTINE_SETTASKMANWINDOW 0x4B
136 NtUserCallHwndParamLock(
149 NtUserCallNextHookEx(
155 #define NOPARAM_ROUTINE_REGISTER_PRIMITIVE 0xffff0001 /* Private ROS */
156 #define NOPARAM_ROUTINE_DESTROY_CARET 0xffff0002
157 #define NOPARAM_ROUTINE_UNINIT_MESSAGE_PUMP 0xffff0003
158 #define NOPARAM_ROUTINE_INIT_MESSAGE_PUMP 0xffff0004
159 #define NOPARAM_ROUTINE_GETMESSAGEEXTRAINFO 0xffff0005
165 #define ONEPARAM_ROUTINE_GETMENU 0x01
166 #define ONEPARAM_ROUTINE_ISWINDOWUNICODE 0x02
167 #define ONEPARAM_ROUTINE_WINDOWFROMDC 0x03
168 #define ONEPARAM_ROUTINE_GETWNDCONTEXTHLPID 0x04
169 #define ONEPARAM_ROUTINE_SWAPMOUSEBUTTON 0x05
170 #define ONEPARAM_ROUTINE_SETCARETBLINKTIME 0x06
171 #define ONEPARAM_ROUTINE_GETCARETINFO 0x07
172 #define ONEPARAM_ROUTINE_SWITCHCARETSHOWING 0x08
173 #define ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS 0x09
174 #define ONEPARAM_ROUTINE_GETWINDOWINSTANCE 0x10
175 #define ONEPARAM_ROUTINE_SETMESSAGEEXTRAINFO 0x0a
182 #define TWOPARAM_ROUTINE_GETWINDOWRGNBOX 0x48
183 #define TWOPARAM_ROUTINE_GETWINDOWRGN 0x49
184 #define TWOPARAM_ROUTINE_SETMENUBARHEIGHT 0x50
185 #define TWOPARAM_ROUTINE_SETMENUITEMRECT 0x51
186 #define TWOPARAM_ROUTINE_SETGUITHRDHANDLE 0x52
187 #define TPR_SGTH_ACTIVE 0x01
188 #define TPR_SGTH_FOCUS 0x02
189 #define TPR_SGTH_CAPTURE 0x03
190 #define TPR_SGTH_MENUOWNER 0x04
191 #define TPR_SGTH_MOVESIZE 0x05
192 #define TPR_SGTH_CARET 0x06
193 #define TWOPARAM_ROUTINE_ENABLEWINDOW 0x53
194 #define TWOPARAM_ROUTINE_UNKNOWN 0x54
195 #define TWOPARAM_ROUTINE_SHOWOWNEDPOPUPS 0x55
196 #define TWOPARAM_ROUTINE_SWITCHTOTHISWINDOW 0x56
197 #define TWOPARAM_ROUTINE_VALIDATERGN 0x57
198 #define TWOPARAM_ROUTINE_SETWNDCONTEXTHLPID 0x58
199 #define TWOPARAM_ROUTINE_CURSORPOSITION 0x59
200 #define TWOPARAM_ROUTINE_SETCARETPOS 0x60
201 #define TWOPARAM_ROUTINE_GETWINDOWINFO 0x61
211 NtUserChangeClipboardChain(
217 NtUserChangeDisplaySettings(
218 PUNICODE_STRING lpszDeviceName
,
219 LPDEVMODEW lpDevMode
,
225 NtUserChildWindowFromPointEx(HWND Parent
,
237 NtUserCloseClipboard(VOID
);
246 NtUserCloseWindowStation(
251 NtUserConvertMemHandle(
257 NtUserCopyAcceleratorTable(
264 NtUserCountClipboardFormats(VOID
);
268 NtUserCreateAcceleratorTable(
270 SIZE_T EntriesCount
);
282 NtUserCreateCursorIconHandle(
289 PUNICODE_STRING lpszDesktopName
,
291 ACCESS_MASK dwDesiredAccess
,
292 LPSECURITY_ATTRIBUTES lpSecurity
,
293 HWINSTA hWindowStation
);
297 NtUserCreateLocalMemHandle(
305 NtUserCreateWindowEx(
307 PUNICODE_STRING lpClassName
,
308 PUNICODE_STRING lpWindowName
,
319 BOOL bUnicodeWindow
);
323 NtUserCreateWindowStation(
324 PUNICODE_STRING lpszWindowStationName
,
325 ACCESS_MASK dwDesiredAccess
,
326 LPSECURITY_ATTRIBUTES lpSecurity
,
333 NtUserDdeGetQualityOfService(
349 NtUserDdeSetQualityOfService(
355 NtUserDeferWindowPos(HDWP WinPosInfo
,
364 NtUserDefSetText(HWND WindowHandle
, PANSI_STRING Text
);
368 NtUserDestroyAcceleratorTable(
373 NtUserDestroyCursorIcon(
378 NtUserDestroyWindow(HWND Wnd
);
382 NtUserDispatchMessage(CONST MSG
* lpmsg
);
403 NtUserDrawAnimatedRects(
419 NtUserDrawCaptionTemp(
438 HBRUSH hbrFlickerFreeDraw
,
445 NtUserEmptyClipboard(VOID
);
449 NtUserEnableScrollBar(
456 NtUserEndDeferWindowPosEx(
461 NtUserEndPaint(HWND hWnd
, CONST PAINTSTRUCT
* lPs
);
465 NtUserEnumDisplayDevices (
466 PUNICODE_STRING lpDevice
, /* device name */
467 DWORD iDevNum
, /* display device */
468 PDISPLAY_DEVICE lpDisplayDevice
, /* device information */
469 DWORD dwFlags
); /* reserved */
473 NtUserEnumDisplayMonitors (
476 MONITORENUMPROC lpfnEnum
,
481 NtUserEnumDisplaySettings(
482 PUNICODE_STRING lpszDeviceName
,
484 LPDEVMODEW lpDevMode
, /* FIXME is this correct? */
494 NtUserExcludeUpdateRgn(
508 NtUserFindExistingCursorIcon(
519 PUNICODE_STRING ucClassName
,
520 PUNICODE_STRING ucWindowName
539 NtUserGetAncestor(HWND hWnd
, UINT Flags
);
544 NtUserGetAsyncKeyState(
549 NtUserGetCaretBlinkTime(VOID
);
557 NtUserGetClassInfo(HINSTANCE hInst
,
565 NtUserGetClassName(HWND hWnd
,
571 NtUserGetClipboardData(
577 NtUserGetClipboardFormatName(
579 PUNICODE_STRING FormatName
,
584 NtUserGetClipboardOwner(VOID
);
588 NtUserGetClipboardSequenceNumber(VOID
);
592 NtUserGetClipboardViewer(VOID
);
601 NtUserGetComboBoxInfo(
607 NtUserGetControlBrush(
614 NtUserGetControlColor(
629 NtUserGetCursorFrameInfo(
654 NtUserGetDoubleClickTime(VOID
);
658 NtUserGetForegroundWindow(VOID
);
662 NtUserGetGuiResources(
668 NtUserGetGUIThreadInfo(
670 LPGUITHREADINFO lpgui
);
674 NtUserGetCursorIconInfo(
680 NtUserGetCursorIconSize(
695 NtUserGetInternalWindowPos(
702 NtUserGetKeyboardLayoutList(
708 NtUserGetKeyboardLayoutName(
713 NtUserGetKeyboardState(
718 NtUserGetKeyNameText( LONG lParam
, LPWSTR lpString
, int nSize
);
727 NtUserGetListBoxInfo(
740 NtUserGetMouseMovePointsEx(
749 NtUserGetObjectInformation(
754 PDWORD nLengthNeeded
);
758 NtUserGetOpenClipboardWindow(VOID
);
762 NtUserGetPriorityClipboardFormat(
763 UINT
*paFormatPriorityList
,
768 NtUserGetProcessWindowStation(VOID
);
772 NtUserGetScrollBarInfo(
775 PSCROLLBARINFO psbi
);
786 NtUserGetThreadDesktop(
790 #define THREADSTATE_FOCUSWINDOW (1)
791 #define THREADSTATE_INSENDMESSAGE (2)
794 NtUserGetThreadState(
799 NtUserGetTitleBarInfo(
804 NtUserGetUpdateRect(HWND hWnd
, LPRECT lpRect
, BOOL fErase
);
820 NtUserGetWindowPlacement(
822 WINDOWPLACEMENT
*lpwndpl
);
837 NtUserImpersonateDdeClientWindow(
843 NtUserInitializeClientPfnArrays(
866 NtUserInternalGetWindowText(
873 NtUserInvalidateRect(
888 NtUserIsClipboardFormatAvailable(
893 NtUserKillSystemTimer
909 NtUserLoadKeyboardLayoutEx(
919 NtUserLockWindowStation(
920 HWINSTA hWindowStation
);
924 NtUserLockWindowUpdate(
929 NtUserLockWorkStation(VOID
);
933 NtUserMapVirtualKeyEx( UINT keyCode
,
953 MINMAXINFO
*MinMaxInfo
,
958 NtUserMNDragLeave(VOID
);
968 NtUserModifyUserStartupInfoFlags(
985 NtUserNotifyIMEStatus(
992 NtUserNotifyWinEvent(
1000 NtUserOpenClipboard(
1007 PUNICODE_STRING lpszDesktopName
,
1009 ACCESS_MASK dwDesiredAccess
);
1013 NtUserOpenInputDesktop(
1016 ACCESS_MASK dwDesiredAccess
);
1020 NtUserOpenWindowStation(
1021 PUNICODE_STRING lpszWindowStationName
,
1022 ACCESS_MASK dwDesiredAccess
);
1048 NtUserPostThreadMessage(
1056 NtUserQuerySendMessage(
1061 NtUserQueryUserCounters(
1068 #define QUERY_WINDOW_UNIQUE_PROCESS_ID 0x00
1069 #define QUERY_WINDOW_UNIQUE_THREAD_ID 0x01
1070 #define QUERY_WINDOW_ISHUNG 0x04
1079 NtUserRealChildWindowFromPoint(
1089 CONST RECT
*lprcUpdate
,
1096 NtUserRegisterClassExWOW(CONST WNDCLASSEXW
* lpwcx
,
1104 NtUserRegisterHotKey(HWND hWnd
,
1111 NtUserRegisterTasklist(
1115 NtUserRegisterWindowMessage(PUNICODE_STRING MessageName
);
1118 NtUserRemoveProp(HWND hWnd
, ATOM Atom
);
1122 NtUserResolveDesktopForWOW(
1139 CONST RECT
*lprcScroll
,
1140 CONST RECT
*lprcClip
,
1145 NtUserScrollWindowEx(HWND hWnd
, INT dx
, INT dy
, const RECT
*rect
,
1146 const RECT
*clipRect
, HRGN hrgnUpdate
, LPRECT rcUpdate
, UINT flags
);
1155 typedef struct tagNTUSERSENDMESSAGEINFO
1157 BOOL HandledByKernel
;
1160 } NTUSERSENDMESSAGEINFO
, *PNTUSERSENDMESSAGEINFO
;
1163 NtUserSendMessage(HWND hWnd
,
1167 PNTUSERSENDMESSAGEINFO Info
);
1171 NtUserSendMessageCallback(
1176 SENDASYNCPROC lpCallBack
,
1180 NtUserSendMessageTimeout(HWND hWnd
,
1187 PNTUSERSENDMESSAGEINFO Info
);
1191 NtUserSendNotifyMessage(
1198 NtUserSetActiveWindow(HWND Wnd
);
1200 NtUserGetActiveWindow(VOID
);
1203 NtUserSetCapture(HWND Wnd
);
1205 NtUserGetCapture(VOID
);
1224 NtUserSetClipboardData(
1231 NtUserSetClipboardViewer(
1232 HWND hWndNewViewer
);
1236 NtUserSetConsoleReserveKeys(
1247 NtUserSetCursorIconContents(
1249 PICONINFO IconInfo
);
1253 NtUserSetCursorIconData(
1283 NtUserSetImeOwnerWindow(
1289 NtUserSetInternalWindowPos(
1297 NtUserSetKeyboardState(
1302 NtUserSetLayeredWindowAttributes(
1310 NtUserSetLogonNotifyWindow(
1315 NtUserSetObjectInformation(
1318 PVOID pvInformation
,
1325 HWND hWndNewParent
);
1329 NtUserSetProcessWindowStation(
1330 HWINSTA hWindowStation
);
1333 NtUserSetProp(HWND hWnd
, ATOM Atom
, HANDLE Data
);
1343 NtUserSetScrollInfo(
1351 NtUserSetShellWindowEx(
1353 HWND hwndShellListView
);
1357 NtUserGetShellWindow();
1369 NtUserSetSystemCursor(
1375 NtUserSetThreadDesktop(
1380 NtUserSetThreadState(
1386 NtUserSetSystemTimer
1391 TIMERPROC lpTimerFunc
1401 TIMERPROC lpTimerFunc
1406 NtUserSetWindowFNID(
1412 NtUserSetWindowLong(
1420 NtUserSetWindowPlacement(
1422 WINDOWPLACEMENT
*lpwndpl
);
1425 STDCALL
NtUserSetWindowPos(
1427 HWND hWndInsertAfter
,
1444 NtUserSetWindowsHookAW(
1451 NtUserSetWindowsHookEx(
1453 PUNICODE_STRING ModuleName
,
1461 NtUserSetWindowStationUser(
1468 NtUserSetWindowWord(HWND hWnd
, INT Index
, WORD NewVal
);
1472 NtUserSetWinEventHook(
1489 NtUserShowScrollBar(HWND hWnd
, int wBar
, DWORD bShow
);
1499 NtUserShowWindowAsync(
1505 NtUserSwitchDesktop(
1510 NtUserSystemParametersInfo(
1529 NtUserTrackMouseEvent(
1534 NtUserTranslateAccelerator(
1541 NtUserTranslateMessage(
1547 NtUserUnhookWindowsHookEx(
1552 NtUserUnhookWinEvent(
1557 NtUserUnloadKeyboardLayout(
1562 NtUserUnlockWindowStation(
1563 HWINSTA hWindowStation
);
1567 NtUserUnregisterClass(
1568 LPCWSTR ClassNameOrAtom
,
1569 HINSTANCE hInstance
,
1574 NtUserUnregisterHotKey(HWND hWnd
,
1579 NtUserUpdateInputContext(
1586 NtUserUpdateInstance(
1592 NtUserUpdateWindow( HWND hWnd
);
1596 NtUserUpdateLayeredWindow(
1609 NtUserUpdatePerUserSystemParameters(
1615 NtUserUserHandleGrantAccess(
1622 NtUserValidateHandleSecure(
1626 NtUserValidateRect(HWND Wnd
, const RECT
* Rect
);
1638 NtUserWaitForInputIdle(
1645 NtUserWaitForMsgAndEvent(
1650 NtUserWaitMessage(VOID
);
1654 NtUserWin32PoolAllocationStats(
1664 NtUserWindowFromPoint(
1670 NtUserYieldTask(VOID
);
1673 NtUserGetWindowThreadProcessId(HWND hWnd
, LPDWORD UnsafePid
);
1676 NtUserGetQueueStatus(BOOL ClearChanges
);
1679 NtUserGetParent(HWND hWnd
);
1682 NtUserGetWindow(HWND hWnd
, UINT Relationship
);
1685 NtUserGetLastActivePopup(HWND hWnd
);
1686 typedef struct _WndProcHandle
1694 NtUserDereferenceWndProcHandle(WNDPROC wpHandle
, WndProcHandle
*Data
);
1697 NtUserManualGuiCheck(LONG Check
);
1699 typedef struct _SETSCROLLBARINFO
1703 DWORD rgstate
[CCHILDREN_SCROLLBAR
+1];
1704 } SETSCROLLBARINFO
, *PSETSCROLLBARINFO
;
1708 NtUserSetScrollBarInfo(
1711 SETSCROLLBARINFO
*info
);
1713 #endif /* __WIN32K_NTUSER_H */