Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1113 lines
31 KiB

  1. #if DBG
  2. #define WRAPAPI(a) a = a##_wrapper
  3. #else
  4. #define WRAPAPI(a) a
  5. #endif // DBG
  6. LIBRARY USER32
  7. EXPORTS
  8. ClientThreadSetup PRIVATE ;csrss uses GetProcAddr().
  9. WRAPAPI(DialogBoxIndirectParamAorW) PRIVATE ; comdlg, wow
  10. WRAPAPI(CreateDialogIndirectParamAorW) PRIVATE ; comdlg
  11. EndTask
  12. WRAPAPI(GetAppCompatFlags) PRIVATE
  13. WRAPAPI(GetAppCompatFlags2) PRIVATE
  14. LoadLocalFonts PRIVATE ; winlogon
  15. LoadRemoteFonts PRIVATE
  16. LockWindowStation = NtUserLockWindowStation PRIVATE
  17. MBToWCSEx PRIVATE
  18. WCSToMBEx PRIVATE
  19. WRAPAPI(MenuWindowProcA) PRIVATE
  20. WRAPAPI(MenuWindowProcW) PRIVATE
  21. QuerySendMessage = NtUserQuerySendMessage PRIVATE
  22. RegisterServicesProcess PRIVATE
  23. WRAPAPI(RegisterLogonProcess) PRIVATE
  24. SetLogonNotifyWindow = NtUserSetLogonNotifyWindow PRIVATE ; Chicago!
  25. WRAPAPI(ShowStartGlass) PRIVATE
  26. UnlockWindowStation = NtUserUnlockWindowStation PRIVATE ; Chicago!
  27. WRAPAPI(UpdatePerUserSystemParameters) PRIVATE
  28. UserClientDllInitialize PRIVATE
  29. WRAPAPI(UserRealizePalette) PRIVATE ; GDI32
  30. WRAPAPI(UserRegisterWowHandlers) PRIVATE
  31. WRAPAPI(RegisterSystemThread) PRIVATE ; Chicago!
  32. WRAPAPI(SetWindowStationUser) PRIVATE
  33. WRAPAPI(GetCursorFrameInfo) PRIVATE
  34. SetCursorContents = NtUserSetCursorContents PRIVATE
  35. WRAPAPI(DrawCaptionTempA) PRIVATE ; desk.cpl
  36. WRAPAPI(DrawCaptionTempW) PRIVATE ; desk.cpl
  37. SetSysColorsTemp PRIVATE ; desk.cpl
  38. WRAPAPI(DrawMenuBarTemp) PRIVATE
  39. TranslateMessageEx PRIVATE
  40. SetConsoleReserveKeys = NtUserSetConsoleReserveKeys PRIVATE
  41. PrivateExtractIconExA PRIVATE
  42. PrivateExtractIconExW PRIVATE
  43. PrivateExtractIconsA
  44. PrivateExtractIconsW
  45. ;
  46. ; These are macros
  47. ;
  48. ; GetNextWindow
  49. ; CopyCursor
  50. ;
  51. ; this stuff wasn't exported from win31 but was in this file
  52. ; for some reason
  53. ;
  54. ; InitQueue
  55. ; GetSysInputMode
  56. ; IsTwoByteCharPrefix
  57. ; Lookupmenuitem
  58. ; RecalcTabStrings
  59. ;
  60. ; win32 will not support these functions
  61. ;
  62. ; SetSysModalWindow
  63. ; GetSysModalWindow
  64. ;
  65. ; do we support these functions?
  66. ;
  67. ; EnableHardwareInput
  68. ; GetSystemDebugState
  69. ; GetCSSwitchCount
  70. ;
  71. ; Callbacks from Server
  72. ;
  73. EditWndProc
  74. ;
  75. ; class.c "Window class manipulation APIs and support routines."
  76. ;
  77. RegisterClassA
  78. RegisterClassW
  79. WRAPAPI(UnregisterClassA)
  80. WRAPAPI(UnregisterClassW)
  81. GetClassInfoA
  82. GetClassInfoW
  83. WRAPAPI(GetClassWord)
  84. SetClassWord = NtUserSetClassWord
  85. GetClassLongA
  86. GetClassLongW
  87. SetClassLongA
  88. SetClassLongW
  89. WRAPAPI(GetClassNameA)
  90. WRAPAPI(GetClassNameW)
  91. ;
  92. ; clres.c "Resource loading/manipulation APIs."
  93. ;
  94. WRAPAPI(LookupIconIdFromDirectory)
  95. WRAPAPI(CreateIconFromResource)
  96. WRAPAPI(GetIconInfo)
  97. WRAPAPI(CreateIconIndirect)
  98. WRAPAPI(LoadMenuA)
  99. WRAPAPI(LoadMenuW)
  100. WRAPAPI(LoadCursorA)
  101. WRAPAPI(LoadCursorW)
  102. WRAPAPI(LoadIconA)
  103. WRAPAPI(LoadIconW)
  104. WRAPAPI(LoadBitmapA)
  105. WRAPAPI(LoadBitmapW)
  106. WRAPAPI(LoadAcceleratorsA)
  107. WRAPAPI(LoadAcceleratorsW)
  108. WRAPAPI(LoadStringA)
  109. WRAPAPI(LoadStringW)
  110. ;
  111. ; input.c "Window message receiving/dispatching APIs and support routines."
  112. ;
  113. WRAPAPI(GetMessageA)
  114. WRAPAPI(GetMessageW)
  115. WRAPAPI(PeekMessageA)
  116. WRAPAPI(PeekMessageW)
  117. TranslateMessage
  118. DispatchMessageA
  119. DispatchMessageW
  120. WRAPAPI(SetMessageQueue)
  121. GetMessagePos
  122. GetMessageTime
  123. WaitMessage = NtUserWaitMessage
  124. WRAPAPI(WaitForInputIdle)
  125. RegisterHotKey = NtUserRegisterHotKey
  126. UnregisterHotKey = NtUserUnregisterHotKey
  127. GetMessageExtraInfo
  128. AttachThreadInput = NtUserAttachThreadInput
  129. ;
  130. ; sendmsg.c "Window message sending/posting APIs and support routines."
  131. ;
  132. WRAPAPI(SendMessageA)
  133. WRAPAPI(SendMessageW)
  134. WRAPAPI(SendMessageTimeoutA)
  135. WRAPAPI(SendMessageTimeoutW)
  136. WRAPAPI(SendNotifyMessageA)
  137. WRAPAPI(SendNotifyMessageW)
  138. WRAPAPI(SendMessageCallbackA)
  139. WRAPAPI(SendMessageCallbackW)
  140. WRAPAPI(PostMessageA)
  141. WRAPAPI(PostMessageW)
  142. WRAPAPI(PostThreadMessageA)
  143. WRAPAPI(PostThreadMessageW)
  144. WRAPAPI(ReplyMessage)
  145. WRAPAPI(PostQuitMessage)
  146. InSendMessage
  147. WRAPAPI(InSendMessageEx)
  148. WRAPAPI(RegisterWindowMessageA)
  149. WRAPAPI(RegisterWindowMessageW)
  150. ;
  151. ; sysmet.c "System metrics APIs and support routines."
  152. ;
  153. WRAPAPI(SwapMouseButton)
  154. GetDoubleClickTime = NtUserGetDoubleClickTime
  155. WRAPAPI(SetDoubleClickTime)
  156. WRAPAPI(GetSystemMetrics)
  157. WRAPAPI(GetSysColor)
  158. SetSysColors
  159. ;
  160. ; enumwin.c "Window Enumeration APIs and support routines."
  161. ;
  162. WRAPAPI(EnumWindows)
  163. WRAPAPI(EnumChildWindows)
  164. WRAPAPI(EnumThreadWindows)
  165. ;
  166. ; showwin.c "ShowWindow and related APIs and support routines."
  167. ;
  168. ShowWindow = NtUserShowWindow
  169. WRAPAPI(ShowOwnedPopups)
  170. WRAPAPI(OpenIcon)
  171. WRAPAPI(CloseWindow)
  172. ;
  173. ; createw.c "CreateWindow and related APIs and support routines."
  174. ;
  175. WRAPAPI(CreateWindowExA)
  176. WRAPAPI(CreateWindowExW)
  177. DestroyWindow = NtUserDestroyWindow
  178. ;
  179. ; swp.c "SetWindowPos and related APIs and support routines."
  180. ;
  181. SetWindowPos = NtUserSetWindowPos
  182. WRAPAPI(BeginDeferWindowPos)
  183. DeferWindowPos = NtUserDeferWindowPos
  184. WRAPAPI(EndDeferWindowPos)
  185. MoveWindow = NtUserMoveWindow
  186. WRAPAPI(BringWindowToTop)
  187. ;
  188. ; spb.c
  189. ;
  190. LockWindowUpdate = NtUserLockWindowUpdate
  191. ;
  192. ; sprite.c
  193. ;
  194. UpdateLayeredWindow = NtUserUpdateLayeredWindow
  195. GetLayeredWindowAttributes = NtUserGetLayeredWindowAttributes
  196. SetLayeredWindowAttributes = NtUserSetLayeredWindowAttributes
  197. PrintWindow = NtUserPrintWindow
  198. #ifdef REDIRECTION
  199. SetProcessRedirectionMode = NtUserSetProcessRedirectionMode
  200. GetProcessRedirectionMode = NtUserGetProcessRedirectionMode
  201. SetDesktopRedirectionMode = NtUserSetDesktopRedirectionMode
  202. GetDesktopRedirectionMode = NtUserGetDesktopRedirectionMode
  203. #endif // REDIRECTION
  204. ;
  205. ; winmgr.c "Core Window Manager APIs and support routines."
  206. ;
  207. WRAPAPI(DefWindowProcA)
  208. WRAPAPI(DefWindowProcW)
  209. WRAPAPI(CallWindowProcA)
  210. WRAPAPI(CallWindowProcW)
  211. WRAPAPI(FlashWindow)
  212. FlashWindowEx = NtUserFlashWindowEx
  213. WRAPAPI(EnableWindow)
  214. WRAPAPI(IsWindowEnabled)
  215. IsWindowUnicode
  216. WRAPAPI(SetWindowTextA)
  217. WRAPAPI(SetWindowTextW)
  218. WRAPAPI(GetWindowTextA)
  219. WRAPAPI(GetWindowTextW)
  220. WRAPAPI(InternalGetWindowText)
  221. WRAPAPI(IsHungAppWindow)
  222. CreateSystemThreads PRIVATE
  223. WRAPAPI(GetWindowTextLengthA)
  224. WRAPAPI(GetWindowTextLengthW)
  225. WRAPAPI(GetClientRect)
  226. WRAPAPI(GetWindowRect)
  227. WRAPAPI(AdjustWindowRect)
  228. WRAPAPI(AdjustWindowRectEx)
  229. WRAPAPI(GetParent)
  230. SetParent = NtUserSetParent
  231. WRAPAPI(FindWindowA)
  232. WRAPAPI(FindWindowW)
  233. WRAPAPI(GetTopWindow)
  234. WRAPAPI(GetLastActivePopup)
  235. WRAPAPI(GetWindow)
  236. WRAPAPI(ClientToScreen)
  237. WRAPAPI(ScreenToClient)
  238. WRAPAPI(MapWindowPoints)
  239. WRAPAPI(IsWindow)
  240. WRAPAPI(IsChild)
  241. WRAPAPI(IsWindowVisible)
  242. WRAPAPI(IsIconic)
  243. WRAPAPI(IsZoomed)
  244. AnyPopup
  245. GetInternalWindowPos = NtUserGetInternalWindowPos PRIVATE
  246. SetInternalWindowPos = NtUserSetInternalWindowPos PRIVATE
  247. WRAPAPI(SystemParametersInfoA)
  248. WRAPAPI(SystemParametersInfoW)
  249. WRAPAPI(IsGUIThread)
  250. WRAPAPI(GetWindowThreadProcessId)
  251. GetWindowPlacement = NtUserGetWindowPlacement
  252. SetWindowPlacement = NtUserSetWindowPlacement
  253. WRAPAPI(AnimateWindow)
  254. #ifdef PRERELEASE
  255. QueryUserCounters = NtUserQueryUserCounters PRIVATE
  256. #endif
  257. GetProcessDefaultLayout
  258. WRAPAPI(SetProcessDefaultLayout)
  259. WRAPAPI(IsWindowInDestroy) PRIVATE
  260. WRAPAPI(IsServerSideWindow) PRIVATE
  261. ;
  262. ; dlgmgr.c "Dialog Manager APIs and support routines."
  263. ;
  264. WRAPAPI(CreateDialogParamA)
  265. WRAPAPI(CreateDialogParamW)
  266. WRAPAPI(CreateDialogIndirectParamA)
  267. WRAPAPI(CreateDialogIndirectParamW)
  268. WRAPAPI(DialogBoxParamA)
  269. WRAPAPI(DialogBoxParamW)
  270. WRAPAPI(DialogBoxIndirectParamA)
  271. WRAPAPI(DialogBoxIndirectParamW)
  272. WRAPAPI(EndDialog)
  273. WRAPAPI(DefDlgProcA)
  274. WRAPAPI(DefDlgProcW)
  275. WRAPAPI(GetDlgItem)
  276. WRAPAPI(SetDlgItemInt)
  277. GetDlgItemInt
  278. WRAPAPI(SetDlgItemTextA)
  279. WRAPAPI(SetDlgItemTextW)
  280. WRAPAPI(GetDlgItemTextA)
  281. WRAPAPI(GetDlgItemTextW)
  282. WRAPAPI(SendDlgItemMessageA)
  283. WRAPAPI(SendDlgItemMessageW)
  284. WRAPAPI(CheckDlgButton)
  285. WRAPAPI(CheckRadioButton)
  286. WRAPAPI(IsDlgButtonChecked)
  287. WRAPAPI(GetNextDlgGroupItem)
  288. WRAPAPI(GetNextDlgTabItem)
  289. WRAPAPI(GetDlgCtrlID)
  290. GetDialogBaseUnits
  291. WRAPAPI(MapDialogRect)
  292. WRAPAPI(IsDialogMessageA)
  293. WRAPAPI(IsDialogMessageW)
  294. IsDialogMessage = IsDialogMessageA
  295. ;
  296. ; clipbrd.c "Clipboard Manager APIs and support routines."
  297. ;
  298. WRAPAPI(OpenClipboard)
  299. CloseClipboard = NtUserCloseClipboard
  300. WRAPAPI(EnumClipboardFormats)
  301. EmptyClipboard = NtUserEmptyClipboard
  302. WRAPAPI(SetClipboardData)
  303. WRAPAPI(GetClipboardData)
  304. RegisterClipboardFormatA = RegisterWindowMessageA
  305. RegisterClipboardFormatW = RegisterWindowMessageW
  306. IsClipboardFormatAvailable = NtUserIsClipboardFormatAvailable
  307. WRAPAPI(GetClipboardFormatNameA)
  308. WRAPAPI(GetClipboardFormatNameW)
  309. CountClipboardFormats = NtUserCountClipboardFormats
  310. GetPriorityClipboardFormat = NtUserGetPriorityClipboardFormat
  311. GetClipboardOwner = NtUserGetClipboardOwner
  312. GetClipboardSequenceNumber = NtUserGetClipboardSequenceNumber
  313. GetClipboardViewer = NtUserGetClipboardViewer
  314. SetClipboardViewer = NtUserSetClipboardViewer
  315. ChangeClipboardChain = NtUserChangeClipboardChain
  316. ;
  317. ; paint.c "Window painting APIs and support routines."
  318. ;
  319. BeginPaint = NtUserBeginPaint
  320. EndPaint = NtUserEndPaint
  321. WRAPAPI(GetWindowRgn)
  322. WRAPAPI(GetWindowRgnBox)
  323. WRAPAPI(SetWindowRgn)
  324. ;
  325. ; ghost.c "Window ghosting APIs and support routines"
  326. ;
  327. DisableProcessWindowsGhosting
  328. ;
  329. ; update.c "Window updating APIs and support routines."
  330. ;
  331. WRAPAPI(UpdateWindow)
  332. WRAPAPI(GetUpdateRect)
  333. WRAPAPI(GetUpdateRgn)
  334. ExcludeUpdateRgn = NtUserExcludeUpdateRgn
  335. InvalidateRect = NtUserInvalidateRect
  336. ValidateRect = NtUserValidateRect
  337. InvalidateRgn = NtUserInvalidateRgn
  338. WRAPAPI(ValidateRgn)
  339. RedrawWindow = NtUserRedrawWindow
  340. ;
  341. ; focus.c "Focus/Activation APIs and support routines."
  342. ;
  343. SetFocus = NtUserSetFocus
  344. GetFocus
  345. SetActiveWindow = NtUserSetActiveWindow
  346. GetActiveWindow
  347. WRAPAPI(SetForegroundWindow)
  348. GetForegroundWindow = NtUserGetForegroundWindow
  349. WRAPAPI(AllowSetForegroundWindow)
  350. WRAPAPI(LockSetForegroundWindow)
  351. ;
  352. ; capture.c "Window capture APIs and support routines."
  353. ;
  354. GetCapture
  355. SetCapture = NtUserSetCapture
  356. ReleaseCapture
  357. ;
  358. ; kbdlyout.c "Keyboard Layout APIs and support routines."
  359. ;
  360. WRAPAPI(LoadKeyboardLayoutA)
  361. WRAPAPI(LoadKeyboardLayoutW)
  362. ActivateKeyboardLayout = NtUserActivateKeyboardLayout
  363. UnloadKeyboardLayout
  364. WRAPAPI(GetKeyboardLayoutNameA)
  365. WRAPAPI(GetKeyboardLayoutNameW)
  366. WRAPAPI(LoadKeyboardLayoutEx) PRIVATE
  367. ;
  368. ; keyboard.c "Keyboard management APIs and support routines."
  369. ;
  370. GetKBCodePage
  371. WRAPAPI(GetKeyState)
  372. WRAPAPI(GetAsyncKeyState)
  373. GetKeyboardState = NtUserGetKeyboardState
  374. SetKeyboardState = NtUserSetKeyboardState
  375. WRAPAPI(GetKeyNameTextA)
  376. WRAPAPI(GetKeyNameTextW)
  377. WRAPAPI(GetKeyboardType)
  378. ;
  379. ; toascii.c "Virtual Keycode to Character translation"
  380. ;
  381. ToAscii
  382. ToUnicode
  383. WRAPAPI(VkKeyScanA)
  384. WRAPAPI(VkKeyScanW)
  385. ;
  386. ; winable.c "Active Accessibility - Win Event hooks"
  387. ;
  388. GetAltTabInfoA
  389. GetAltTabInfoW
  390. GetAltTabInfo = GetAltTabInfoA
  391. GetAncestor = NtUserGetAncestor
  392. GetComboBoxInfo = NtUserGetComboBoxInfo
  393. GetCursorInfo = NtUserGetCursorInfo
  394. GetGUIThreadInfo = NtUserGetGUIThreadInfo
  395. GetListBoxInfo = NtUserGetListBoxInfo
  396. GetMenuBarInfo = NtUserGetMenuBarInfo
  397. GetScrollBarInfo = NtUserGetScrollBarInfo
  398. GetTitleBarInfo = NtUserGetTitleBarInfo
  399. WRAPAPI(GetWindowInfo)
  400. WRAPAPI(GetWindowModuleFileNameA)
  401. WRAPAPI(GetWindowModuleFileNameW)
  402. GetWindowModuleFileName = GetWindowModuleFileNameA
  403. WRAPAPI(NotifyWinEvent)
  404. RealChildWindowFromPoint = NtUserRealChildWindowFromPoint
  405. RealGetWindowClass = RealGetWindowClassA
  406. WRAPAPI(RealGetWindowClassA)
  407. WRAPAPI(RealGetWindowClassW)
  408. SetWinEventHook
  409. UnhookWinEvent = NtUserUnhookWinEvent
  410. WRAPAPI(IsWinEventHookInstalled)
  411. WRAPAPI(RegisterUserApiHook) PRIVATE
  412. UnregisterUserApiHook = NtUserUnregisterUserApiHook PRIVATE
  413. #ifdef MESSAGE_PUMP_HOOK
  414. RegisterMessagePumpHook PRIVATE
  415. UnregisterMessagePumpHook PRIVATE
  416. #endif
  417. ;
  418. ; xlate.c "Scancode, Virtual Key, and Character translations"
  419. ;
  420. WRAPAPI(MapVirtualKeyA)
  421. WRAPAPI(MapVirtualKeyW)
  422. WRAPAPI(OemKeyScan)
  423. ;
  424. ; lowinput.c "Low-level input APIs and support routines."
  425. ;
  426. GetInputState
  427. WRAPAPI(GetQueueStatus)
  428. MsgWaitForMultipleObjects
  429. MsgWaitForMultipleObjectsEx
  430. ;
  431. ; timers.c "Timer APIs and support routines."
  432. ;
  433. SetTimer = NtUserSetTimer
  434. KillTimer = NtUserKillTimer
  435. SetSystemTimer = NtUserSetSystemTimer PRIVATE
  436. WRAPAPI(KillSystemTimer) PRIVATE
  437. ;
  438. ; menu.c "Menu APIs and support routines."
  439. ;
  440. WRAPAPI(TranslateAcceleratorA)
  441. WRAPAPI(TranslateAcceleratorW)
  442. TranslateAccelerator = TranslateAcceleratorA
  443. LoadMenuIndirectW = CreateMenuFromResource
  444. LoadMenuIndirectA = CreateMenuFromResource
  445. WRAPAPI(GetMenu)
  446. WRAPAPI(SetMenu)
  447. SetSystemMenu = NtUserSetSystemMenu PRIVATE
  448. WRAPAPI(ChangeMenuA)
  449. WRAPAPI(ChangeMenuW)
  450. HiliteMenuItem = NtUserHiliteMenuItem
  451. WRAPAPI(GetMenuStringA)
  452. WRAPAPI(GetMenuStringW)
  453. WRAPAPI(GetMenuState)
  454. WRAPAPI(DrawMenuBar)
  455. GetSystemMenu = NtUserGetSystemMenu
  456. CreateMenu
  457. CreatePopupMenu
  458. DestroyMenu = NtUserDestroyMenu
  459. WRAPAPI(CheckMenuItem)
  460. WRAPAPI(EnableMenuItem)
  461. WRAPAPI(GetSubMenu)
  462. WRAPAPI(GetMenuItemID)
  463. WRAPAPI(GetMenuItemCount)
  464. WRAPAPI(InsertMenuA)
  465. WRAPAPI(InsertMenuW)
  466. WRAPAPI(AppendMenuA)
  467. WRAPAPI(AppendMenuW)
  468. WRAPAPI(ModifyMenuA)
  469. WRAPAPI(ModifyMenuW)
  470. RemoveMenu = NtUserRemoveMenu
  471. DeleteMenu = NtUserDeleteMenu
  472. SetMenuItemBitmaps
  473. GetMenuCheckMarkDimensions
  474. TrackPopupMenu
  475. PaintMenuBar = NtUserPaintMenuBar PRIVATE
  476. CalcMenuBar = NtUserCalcMenuBar PRIVATE
  477. ;
  478. ; scroll.c "Window/DC scrolling APIs and support routines."
  479. ;
  480. ; later scrollwindow can be removed
  481. ScrollWindow
  482. ScrollDC
  483. ScrollWindowEx
  484. ;
  485. ; sbapi.c "Scrollbar control"
  486. ;
  487. WRAPAPI(SetScrollPos)
  488. WRAPAPI(GetScrollPos)
  489. WRAPAPI(SetScrollRange)
  490. WRAPAPI(GetScrollRange)
  491. ShowScrollBar = NtUserShowScrollBar
  492. ;
  493. ; prop.c "Window property APIs and support routines."
  494. ;
  495. WRAPAPI(SetPropA)
  496. WRAPAPI(SetPropW)
  497. WRAPAPI(GetPropA)
  498. WRAPAPI(GetPropW)
  499. WRAPAPI(RemovePropA)
  500. WRAPAPI(RemovePropW)
  501. WRAPAPI(EnumPropsA)
  502. WRAPAPI(EnumPropsW)
  503. WRAPAPI(EnumPropsExA)
  504. WRAPAPI(EnumPropsExW)
  505. ;
  506. ; msgbox.c "Message Box APIs and support routines."
  507. ;
  508. MessageBoxA
  509. MessageBoxW
  510. MessageBoxExA
  511. MessageBoxExW
  512. MessageBoxIndirectA
  513. MessageBoxIndirectW
  514. MessageBoxTimeoutA
  515. MessageBoxTimeoutW
  516. WRAPAPI(MessageBeep)
  517. MB_GetString PRIVATE
  518. SoftModalMessageBox PRIVATE
  519. ;
  520. ; rmcreate.c
  521. ;
  522. CreateCursor
  523. WRAPAPI(DestroyCursor)
  524. CreateIcon
  525. DestroyIcon = DestroyCursor
  526. WRAPAPI(CreateAcceleratorTableA)
  527. CreateAcceleratorTableW = NtUserCreateAcceleratorTable
  528. DestroyAcceleratorTable
  529. WRAPAPI(CopyAcceleratorTableA)
  530. CopyAcceleratorTableW = NtUserCopyAcceleratorTable
  531. ;
  532. ; cursor.c "Mouse cursor APIs and support routines."
  533. ;
  534. WRAPAPI(ShowCursor)
  535. WRAPAPI(SetCursorPos)
  536. SetCursor = NtUserSetCursor
  537. WRAPAPI(GetCursorPos)
  538. ClipCursor = NtUserClipCursor
  539. GetClipCursor = NtUserGetClipCursor
  540. GetCursor
  541. WRAPAPI(SetSystemCursor)
  542. WRAPAPI(LoadCursorFromFileA)
  543. WRAPAPI(LoadCursorFromFileW)
  544. ;
  545. ; icon.c "Icon management APIs and support routines"
  546. ;
  547. WRAPAPI(DrawIcon)
  548. ;
  549. ; caret.c "Input caret APIs and support routines."
  550. ;
  551. CreateCaret = NtUserCreateCaret
  552. GetCaretBlinkTime = NtUserGetCaretBlinkTime
  553. WRAPAPI(SetCaretBlinkTime)
  554. DestroyCaret
  555. HideCaret = NtUserHideCaret
  556. ShowCaret = NtUserShowCaret
  557. WRAPAPI(SetCaretPos)
  558. GetCaretPos = NtUserGetCaretPos
  559. ;
  560. ; winwhere.c "Window hit-testing APIs and support routines."
  561. ;
  562. WindowFromPoint = NtUserWindowFromPoint
  563. WRAPAPI(ChildWindowFromPoint)
  564. ;
  565. ; getset.c "window word manipulation APIs"
  566. ;
  567. WRAPAPI(GetWindowWord)
  568. SetWindowWord = NtUserSetWindowWord
  569. GetWindowLongA
  570. GetWindowLongW
  571. SetWindowLongA
  572. SetWindowLongW
  573. ;
  574. ; desktop.c "Desktop window APIs and window procedure."
  575. ;
  576. ; GetDesktopHwnd
  577. GetDesktopWindow
  578. WRAPAPI(CreateDesktopA)
  579. WRAPAPI(CreateDesktopW)
  580. WRAPAPI(OpenDesktopA)
  581. WRAPAPI(OpenDesktopW)
  582. OpenInputDesktop = NtUserOpenInputDesktop
  583. SwitchDesktop = NtUserSwitchDesktop
  584. GetInputDesktop
  585. SetThreadDesktop = NtUserSetThreadDesktop
  586. GetThreadDesktop
  587. CloseDesktop = NtUserCloseDesktop
  588. RegisterTasklist = NtUserRegisterTasklist PRIVATE
  589. SetDeskWallpaper
  590. WRAPAPI(EnumDisplayDevicesA)
  591. WRAPAPI(EnumDisplayDevicesW)
  592. WRAPAPI(EnumDisplaySettingsA)
  593. WRAPAPI(EnumDisplaySettingsW)
  594. WRAPAPI(EnumDisplaySettingsExA)
  595. WRAPAPI(EnumDisplaySettingsExW)
  596. WRAPAPI(EnumWindowStationsA)
  597. WRAPAPI(EnumWindowStationsW)
  598. WRAPAPI(EnumDesktopsA)
  599. WRAPAPI(EnumDesktopsW)
  600. WRAPAPI(EnumDesktopWindows)
  601. ResolveDesktopForWOW = NtUserResolveDesktopForWOW PRIVATE
  602. ;
  603. ; winsta.c "Windowstation APIs."
  604. ;
  605. WRAPAPI(CreateWindowStationA)
  606. WRAPAPI(CreateWindowStationW)
  607. WRAPAPI(OpenWindowStationA)
  608. WRAPAPI(OpenWindowStationW)
  609. CloseWindowStation = NtUserCloseWindowStation
  610. SetProcessWindowStation = NtUserSetProcessWindowStation
  611. GetProcessWindowStation = NtUserGetProcessWindowStation
  612. ;
  613. ; security.c "USER object security routines."
  614. ;
  615. WRAPAPI(SetUserObjectSecurity)
  616. WRAPAPI(GetUserObjectSecurity)
  617. SetUserObjectInformationW = NtUserSetObjectInformation
  618. SetUserObjectInformationA = NtUserSetObjectInformation
  619. GetUserObjectInformationW = NtUserGetObjectInformation
  620. WRAPAPI(GetUserObjectInformationA)
  621. ;
  622. ; dirlist.c "Directory list APIs and support routines."
  623. ;
  624. WRAPAPI(DlgDirListA)
  625. WRAPAPI(DlgDirListW)
  626. WRAPAPI(DlgDirSelectExA)
  627. WRAPAPI(DlgDirSelectExW)
  628. WRAPAPI(DlgDirListComboBoxA)
  629. WRAPAPI(DlgDirListComboBoxW)
  630. WRAPAPI(DlgDirSelectComboBoxExA)
  631. WRAPAPI(DlgDirSelectComboBoxExW)
  632. ;
  633. ; hooks.c "Hook APIs and support routines."
  634. ;
  635. WRAPAPI(SetWindowsHookA)
  636. WRAPAPI(SetWindowsHookW)
  637. WRAPAPI(UnhookWindowsHook)
  638. WRAPAPI(SetWindowsHookExA)
  639. WRAPAPI(SetWindowsHookExW)
  640. UnhookWindowsHookEx = NtUserUnhookWindowsHookEx
  641. WRAPAPI(CallNextHookEx)
  642. WRAPAPI(CallMsgFilterA)
  643. WRAPAPI(CallMsgFilterW)
  644. CallMsgFilter = CallMsgFilterA
  645. ;
  646. ; MDI.c "Multiple Document Interface APIs, window procs, and support routines."
  647. ;
  648. WRAPAPI(DefFrameProcA)
  649. WRAPAPI(DefFrameProcW)
  650. WRAPAPI(DefMDIChildProcA)
  651. WRAPAPI(DefMDIChildProcW)
  652. WRAPAPI(ArrangeIconicWindows)
  653. WRAPAPI(CascadeChildWindows)
  654. WRAPAPI(TileChildWindows)
  655. ; CalcChildScroll ; Private API used by progman
  656. WRAPAPI(CreateMDIWindowA)
  657. WRAPAPI(CreateMDIWindowW)
  658. WRAPAPI(ScrollChildren) PRIVATE
  659. ;
  660. ; help.c "Front end API for Windows Help Manager."
  661. ;
  662. WinHelpA
  663. WinHelpW
  664. ;
  665. ; draw.c "Miscellaneous exported and internal drawing routines."
  666. ;
  667. WRAPAPI(GrayStringA)
  668. WRAPAPI(GrayStringW)
  669. WRAPAPI(DrawTextA)
  670. WRAPAPI(DrawTextW)
  671. TabbedTextOutA
  672. TabbedTextOutW
  673. GetTabbedTextExtentA
  674. GetTabbedTextExtentW
  675. DrawFocusRect
  676. ;
  677. ; dc.c "DC management APIs and support routines."
  678. ;
  679. GetWindowDC = NtUserGetWindowDC
  680. GetDC = NtUserGetDC
  681. WRAPAPI(ReleaseDC)
  682. WRAPAPI(WindowFromDC)
  683. GetDCEx = NtUserGetDCEx
  684. ;
  685. ; palman.c "Palette Manager APIs and support routines."
  686. ;
  687. ; SelectPalette
  688. ; RealizePalette
  689. ;
  690. ; misc.c "Miscellanous APIs and routines that don't fit well anywhere else."
  691. ;
  692. WRAPAPI(ExitWindowsEx)
  693. WRAPAPI(DisplayExitWindowsWarnings) PRIVATE
  694. WRAPAPI(RecordShutdownReason) PRIVATE
  695. WRAPAPI(SwitchToThisWindow)
  696. WRAPAPI(SetDebugErrorLevel)
  697. #if defined(_X86_)
  698. WRAPAPI(InitializeWin32EntryTable) PRIVATE
  699. #endif
  700. EnterReaderModeHelper PRIVATE
  701. IsProcess16Bit PRIVATE
  702. ;
  703. ; clrect.c "Client-side rectangle drawing primitives"
  704. ;
  705. FillRect
  706. InvertRect
  707. FrameRect
  708. ;
  709. ; ddeml.c "DDEML APIs"
  710. ;
  711. WRAPAPI(DdeInitializeA)
  712. WRAPAPI(DdeInitializeW)
  713. WRAPAPI(DdeUninitialize)
  714. WRAPAPI(DdeCmpStringHandles)
  715. WRAPAPI(DdeConnectList)
  716. WRAPAPI(DdeQueryNextServer)
  717. WRAPAPI(DdeDisconnectList)
  718. WRAPAPI(DdeConnect)
  719. WRAPAPI(DdeDisconnect)
  720. WRAPAPI(DdeReconnect)
  721. WRAPAPI(DdeQueryConvInfo)
  722. WRAPAPI(DdeSetUserHandle)
  723. WRAPAPI(DdeAbandonTransaction)
  724. WRAPAPI(DdePostAdvise)
  725. WRAPAPI(DdeEnableCallback)
  726. DdeNameService
  727. WRAPAPI(DdeClientTransaction)
  728. WRAPAPI(DdeCreateDataHandle)
  729. WRAPAPI(DdeAddData)
  730. WRAPAPI(DdeGetData)
  731. WRAPAPI(DdeAccessData)
  732. WRAPAPI(DdeFreeDataHandle)
  733. WRAPAPI(DdeUnaccessData)
  734. WRAPAPI(DdeGetLastError)
  735. WRAPAPI(DdeCreateStringHandleA)
  736. WRAPAPI(DdeCreateStringHandleW)
  737. WRAPAPI(DdeQueryStringA)
  738. WRAPAPI(DdeQueryStringW)
  739. WRAPAPI(DdeFreeStringHandle)
  740. WRAPAPI(DdeKeepStringHandle)
  741. WRAPAPI(DdeImpersonateClient)
  742. ImpersonateDdeClientWindow = NtUserImpersonateDdeClientWindow
  743. DdeGetQualityOfService = NtUserDdeGetQualityOfService PRIVATE
  744. DdeSetQualityOfService = NtUserDdeSetQualityOfService
  745. ;
  746. ; ddetrack.c
  747. ;
  748. WRAPAPI(PackDDElParam)
  749. WRAPAPI(UnpackDDElParam)
  750. WRAPAPI(FreeDDElParam)
  751. WRAPAPI(ReuseDDElParam)
  752. ;
  753. ; dragdrop.c "Drag/Drop support functions."
  754. ;
  755. DragObject = NtUserDragObject
  756. DragDetect = NtUserDragDetect
  757. ;
  758. ; Merge 3.1.1
  759. ;
  760. GetOpenClipboardWindow = NtUserGetOpenClipboardWindow
  761. DrawFrame
  762. EnableScrollBar
  763. WRAPAPI(CopyIcon)
  764. ;
  765. ; winmgrc.c
  766. ;
  767. WRAPAPI(IsMenu)
  768. ;
  769. ; rect.c "Rectangle management APIs."
  770. ;
  771. SetRect
  772. SetRectEmpty
  773. CopyRect
  774. InflateRect
  775. SubtractRect
  776. IntersectRect
  777. UnionRect
  778. OffsetRect
  779. IsRectEmpty
  780. EqualRect
  781. PtInRect
  782. ;
  783. ; alignrec.c "Rectangle management APIs."
  784. ;
  785. AlignRects PRIVATE
  786. ;
  787. ; strings.c "String manipulation routines. Should be replaced with Rtl macros."
  788. ;
  789. WRAPAPI(wvsprintfA)
  790. WRAPAPI(wvsprintfW)
  791. wsprintfA
  792. wsprintfW
  793. WRAPAPI(CharLowerA)
  794. WRAPAPI(CharLowerW)
  795. WRAPAPI(CharUpperA)
  796. WRAPAPI(CharUpperW)
  797. WRAPAPI(CharNextA)
  798. WRAPAPI(CharNextW)
  799. WRAPAPI(CharPrevA)
  800. WRAPAPI(CharPrevW)
  801. WRAPAPI(IsCharLowerA)
  802. WRAPAPI(IsCharLowerW)
  803. WRAPAPI(IsCharUpperA)
  804. WRAPAPI(IsCharUpperW)
  805. WRAPAPI(IsCharAlphaA)
  806. WRAPAPI(IsCharAlphaW)
  807. WRAPAPI(IsCharAlphaNumericA)
  808. WRAPAPI(IsCharAlphaNumericW)
  809. WRAPAPI(CharLowerBuffA)
  810. WRAPAPI(CharLowerBuffW)
  811. WRAPAPI(CharUpperBuffA)
  812. WRAPAPI(CharUpperBuffW)
  813. ;
  814. ; oemxlate.c "OEM to ANSI/Unicode, ANSI/Unicode to OEM character translation"
  815. ;
  816. WRAPAPI(CharToOemA)
  817. WRAPAPI(CharToOemW)
  818. WRAPAPI(CharToOemBuffA)
  819. WRAPAPI(CharToOemBuffW)
  820. WRAPAPI(OemToCharA)
  821. WRAPAPI(OemToCharW)
  822. WRAPAPI(OemToCharBuffA)
  823. WRAPAPI(OemToCharBuffW)
  824. ;
  825. ; ntinput
  826. ;
  827. WRAPAPI(keybd_event)
  828. WRAPAPI(mouse_event)
  829. SendInput = NtUserSendInput
  830. BlockInput = NtUserBlockInput
  831. GetMouseMovePointsEx = NtUserGetMouseMovePointsEx
  832. GetLastInputInfo
  833. WRAPAPI(SetLastErrorEx) ; to be moved!!!
  834. ;
  835. ; Chicago/Cairo APIs
  836. ;
  837. WRAPAPI(BroadcastSystemMessageA)
  838. WRAPAPI(BroadcastSystemMessageW)
  839. BroadcastSystemMessage = BroadcastSystemMessageA
  840. WRAPAPI(BroadcastSystemMessageExA)
  841. WRAPAPI(BroadcastSystemMessageExW)
  842. CascadeWindows
  843. WRAPAPI(ChangeDisplaySettingsA)
  844. WRAPAPI(ChangeDisplaySettingsW)
  845. WRAPAPI(ChangeDisplaySettingsExA)
  846. WRAPAPI(ChangeDisplaySettingsExW)
  847. WRAPAPI(CharNextExA) ; Ansi Only
  848. WRAPAPI(CharPrevExA) ; Ansi Only
  849. WRAPAPI(CheckMenuRadioItem)
  850. ChildWindowFromPointEx = NtUserChildWindowFromPointEx
  851. WRAPAPI(CopyImage)
  852. WRAPAPI(CreateIconFromResourceEx)
  853. DrawAnimatedRects = NtUserDrawAnimatedRects
  854. DrawCaption
  855. DrawEdge
  856. WRAPAPI(DrawFrameControl)
  857. WRAPAPI(DrawIconEx)
  858. WRAPAPI(DrawStateA)
  859. WRAPAPI(DrawStateW)
  860. WRAPAPI(DrawTextExA)
  861. DrawTextExW
  862. EndMenu = NtUserEndMenu
  863. WRAPAPI(FindWindowExA)
  864. WRAPAPI(FindWindowExW)
  865. GetClassInfoExA
  866. GetClassInfoExW
  867. WRAPAPI(GetKeyboardLayout)
  868. GetKeyboardLayoutList = NtUserGetKeyboardLayoutList
  869. WRAPAPI(GetMenuContextHelpId)
  870. WRAPAPI(GetMenuDefaultItem)
  871. WRAPAPI(GetMenuInfo)
  872. WRAPAPI(GetMenuItemInfoA)
  873. WRAPAPI(GetMenuItemInfoW)
  874. GetMenuItemRect = NtUserGetMenuItemRect
  875. WRAPAPI(GetScrollInfo)
  876. GetShellWindow
  877. WRAPAPI(GetSysColorBrush)
  878. WRAPAPI(GetWindowContextHelpId)
  879. InsertMenuItemA
  880. InsertMenuItemW
  881. WRAPAPI(LoadImageA)
  882. WRAPAPI(LoadImageW)
  883. WRAPAPI(LookupIconIdFromDirectoryEx)
  884. WRAPAPI(MapVirtualKeyExA)
  885. WRAPAPI(MapVirtualKeyExW)
  886. MenuItemFromPoint = NtUserMenuItemFromPoint
  887. PaintDesktop = NtUserPaintDesktop
  888. RegisterClassExA
  889. RegisterClassExW
  890. SetMenuContextHelpId = NtUserSetMenuContextHelpId
  891. SetMenuDefaultItem = NtUserSetMenuDefaultItem
  892. WRAPAPI(SetMenuInfo)
  893. WRAPAPI(SetMenuItemInfoA)
  894. WRAPAPI(SetMenuItemInfoW)
  895. WRAPAPI(SetMessageExtraInfo)
  896. WRAPAPI(SetScrollInfo)
  897. WRAPAPI(SetShellWindow)
  898. SetShellWindowEx = NtUserSetShellWindowEx PRIVATE
  899. WRAPAPI(SetWindowContextHelpId)
  900. ShowWindowAsync = NtUserShowWindowAsync
  901. TileWindows
  902. ToAsciiEx
  903. ToUnicodeEx
  904. TrackMouseEvent = NtUserTrackMouseEvent
  905. TrackPopupMenuEx = NtUserTrackPopupMenuEx
  906. WRAPAPI(TranslateMDISysAccel)
  907. WRAPAPI(VkKeyScanExA)
  908. WRAPAPI(VkKeyScanExW)
  909. ; Win 5.0 APIs
  910. GetGuiResources = NtUserGetGuiResources
  911. RegisterDeviceNotificationA
  912. RegisterDeviceNotificationW
  913. UnregisterDeviceNotification
  914. DeviceEventWorker PRIVATE
  915. Win32PoolAllocationStats = NtUserWin32PoolAllocationStats PRIVATE
  916. #if DBG
  917. WRAPAPI(DbgWin32HeapFail)
  918. WRAPAPI(DbgWin32HeapStat)
  919. #endif
  920. LockWorkStation = NtUserLockWorkStation
  921. UserHandleGrantAccess = NtUserUserHandleGrantAccess
  922. ; multimonitor apis
  923. WRAPAPI(GetMonitorInfoA)
  924. WRAPAPI(GetMonitorInfoW)
  925. EnumDisplayMonitors = NtUserEnumDisplayMonitors
  926. MonitorFromPoint
  927. MonitorFromRect
  928. MonitorFromWindow
  929. WRAPAPI(SetTaskmanWindow) PRIVATE
  930. GetTaskmanWindow PRIVATE
  931. WRAPAPI(SetProgmanWindow) PRIVATE
  932. GetProgmanWindow PRIVATE
  933. WRAPAPI(RegisterShellHookWindow)
  934. WRAPAPI(DeregisterShellHookWindow)
  935. #if DBG
  936. PrivateSetDbgTag PRIVATE
  937. PrivateSetRipFlags PRIVATE
  938. SetDbgTag PRIVATE
  939. SetRipFlags PRIVATE
  940. GetRipFlags PRIVATE
  941. GetDbgTagFlags PRIVATE
  942. VRipOutput PRIVATE
  943. VTagOutput PRIVATE
  944. #endif
  945. ;
  946. ; Used by CreateWindowStation() and winsrv.dll to
  947. ; finish DLL init after the connection is made.
  948. ; No graphics can be done until the connection is
  949. ; established.
  950. CtxInitUser32 PRIVATE
  951. GetWinStationInfo PRIVATE
  952. #ifdef _WIN64
  953. WRAPAPI(GetWindowLongPtrA)
  954. WRAPAPI(GetWindowLongPtrW)
  955. WRAPAPI(SetWindowLongPtrA)
  956. WRAPAPI(SetWindowLongPtrW)
  957. WRAPAPI(GetClassLongPtrA)
  958. WRAPAPI(GetClassLongPtrW)
  959. WRAPAPI(SetClassLongPtrA)
  960. WRAPAPI(SetClassLongPtrW)
  961. #endif
  962. ;
  963. ; The following IMM functions are faked(US) or dynamically loaded(FE)
  964. ;
  965. WRAPAPI(WINNLSGetIMEHotkey)
  966. WRAPAPI(WINNLSEnableIME)
  967. WRAPAPI(WINNLSGetEnableStatus)
  968. WRAPAPI(SendIMEMessageExW)
  969. WRAPAPI(SendIMEMessageExA)
  970. WRAPAPI(IMPGetIMEW)
  971. WRAPAPI(IMPGetIMEA)
  972. WRAPAPI(IMPQueryIMEW)
  973. WRAPAPI(IMPQueryIMEA)
  974. WRAPAPI(IMPSetIMEW)
  975. WRAPAPI(IMPSetIMEA)
  976. WRAPAPI(User32InitializeImmEntryTable) PRIVATE
  977. ;
  978. ; IMM related private APIs
  979. ;
  980. WRAPAPI(CliImmSetHotKey) PRIVATE
  981. #ifdef LATER
  982. WRAPAPI(ImmReconversionWorker) PRIVATE
  983. #endif
  984. ;
  985. ; LPK APIs
  986. ;
  987. InitializeLpkHooks PRIVATE
  988. UserLpkTabbedTextOut PRIVATE
  989. WRAPAPI(UserLpkPSMTextOut) PRIVATE
  990. #ifdef GENERIC_INPUT
  991. ; Raw Input APIs
  992. GetRawInputData = NtUserGetRawInputData
  993. WRAPAPI(GetRawInputDeviceInfoA)
  994. WRAPAPI(GetRawInputDeviceInfoW)
  995. RegisterRawInputDevices = NtUserRegisterRawInputDevices
  996. GetRegisteredRawInputDevices = NtUserGetRegisteredRawInputDevices
  997. WRAPAPI(GetRawInputBuffer)
  998. GetRawInputDeviceList = NtUserGetRawInputDeviceList
  999. DefRawInputProc
  1000. #endif // GENERIC_INPUT
  1001. ;
  1002. ; Shutdown reason APIs
  1003. GetReasonTitleFromReasonCode PRIVATE
  1004. ReasonCodeNeedsComment PRIVATE
  1005. ReasonCodeNeedsBugID PRIVATE
  1006. BuildReasonArray PRIVATE
  1007. DestroyReasons PRIVATE
  1008. IsSETEnabled PRIVATE
  1009. ;
  1010. ; BroadcastSystemMessageExW wrapper function
  1011. ; associates a desktop with the csrss server thread
  1012. ; in order to send a message with BroadcastSystemMessageExW
  1013. ;
  1014. WRAPAPI(CsrBroadcastSystemMessageExW) PRIVATE
  1015. AllowForegroundActivation PRIVATE