Author: tkreuzer
Date: Fri Mar 21 21:53:56 2008
New Revision: 32743
URL:
http://svn.reactos.org/svn/reactos?rev=3D32743&view=3Drev
Log:
- make Simplecall definitions (NtUserCallXxx) compatible to different Win v=
ersions (currently XP and Vista), using an enum and conditional compiling
- move incompatible definitions to the bottom of ntuser.h (bad section)
- fix parameters of NtUserCallHwnd* and move the rest of them to simplecall=
.c
Modified:
trunk/reactos/dll/win32/user32/windows/hook.c
trunk/reactos/include/reactos/win32k/ntuser.h
trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c
trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c
Modified: trunk/reactos/dll/win32/user32/windows/hook.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/wind=
ows/hook.c?rev=3D32743&r1=3D32742&r2=3D32743&view=3Ddiff
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/reactos/dll/win32/user32/windows/hook.c (original)
+++ trunk/reactos/dll/win32/user32/windows/hook.c Fri Mar 21 21:53:56 2008
@@ -197,7 +197,7 @@
STDCALL
DeregisterShellHookWindow(HWND hWnd)
{
- return NtUserCallHwnd(HWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW, (DWORD)hWn=
d);
+ return NtUserCallHwnd(hWnd, HWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW);
}
=
/*
@@ -207,7 +207,7 @@
STDCALL
RegisterShellHookWindow(HWND hWnd)
{
- return NtUserCallHwnd(HWND_ROUTINE_REGISTERSHELLHOOKWINDOW, (DWORD)hWnd);
+ return NtUserCallHwnd(hWnd, HWND_ROUTINE_REGISTERSHELLHOOKWINDOW);
}
=
/*
Modified: trunk/reactos/include/reactos/win32k/ntuser.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/win32=
k/ntuser.h?rev=3D32743&r1=3D32742&r2=3D32743&view=3Ddiff
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/reactos/include/reactos/win32k/ntuser.h (original)
+++ trunk/reactos/include/reactos/win32k/ntuser.h Fri Mar 21 21:53:56 2008
@@ -479,30 +479,199 @@
DWORD BufferSize,
DWORD *Count);
=
-enum {
+/* apfnSimpleCall indices from Windows XP SP 2 */
+/* TODO: Check for differences in Windows 2000, 2003 and 2008 */
+#define WIN32K_VERSION NTDDI_WINXPSP2 // FIXME: this should go somewhere e=
lse
+
+enum SimpleCallRoutines
+{
+ NOPARAM_ROUTINE_CREATEMENU,
+ NOPARAM_ROUTINE_CREATEMENUPOPUP,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ NOPARAM_ROUTINE_ALLOWFOREGNDACTIVATION,
+ NOPARAM_ROUTINE_MSQCLEARWAKEMASK,
+ NOPARAM_ROUTINE_CREATESYSTEMTHREADS,
+ NOPARAM_ROUTINE_DESTROY_CARET,
+#endif
+ NOPARAM_ROUTINE_ENABLEPROCWNDGHSTING,
+#if (WIN32K_VERSION < NTDDI_VISTA)
+ NOPARAM_ROUTINE_MSQCLEARWAKEMASK,
+ NOPARAM_ROUTINE_ALLOWFOREGNDACTIVATION,
+ NOPARAM_ROUTINE_DESTROY_CARET,
+#endif
+ NOPARAM_ROUTINE_GETDEVICECHANGEINFO,
+ NOPARAM_ROUTINE_GETIMESHOWSTATUS,
+ NOPARAM_ROUTINE_GETINPUTDESKTOP,
+ NOPARAM_ROUTINE_GETMSESSAGEPOS,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ NOPARAM_ROUTINE_HANDLESYSTHRDCREATFAIL,
+#else
+ NOPARAM_ROUTINE_GETREMOTEPROCID,
+#endif
+ NOPARAM_ROUTINE_HIDECURSORNOCAPTURE,
+ NOPARAM_ROUTINE_LOADCURSANDICOS,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ NOPARAM_ROUTINE_LOADUSERAPIHOOK,
+ NOPARAM_ROUTINE_PREPAREFORLOGOFF, /* 0x0f */
+#endif
+ NOPARAM_ROUTINE_RELEASECAPTURE,
+ NOPARAM_ROUTINE_RESETDBLCLICK,
+ NOPARAM_ROUTINE_ZAPACTIVEANDFOUS,
+ NOPARAM_ROUTINE_REMOTECONSHDWSTOP,
+ NOPARAM_ROUTINE_REMOTEDISCONNECT,
+ NOPARAM_ROUTINE_REMOTELOGOFF,
+ NOPARAM_ROUTINE_REMOTENTSECURITY,
+ NOPARAM_ROUTINE_REMOTESHDWSETUP,
+ NOPARAM_ROUTINE_REMOTESHDWSTOP,
+ NOPARAM_ROUTINE_REMOTEPASSTHRUENABLE,
+ NOPARAM_ROUTINE_REMOTEPASSTHRUDISABLE,
+ NOPARAM_ROUTINE_REMOTECONNECTSTATE,
+ NOPARAM_ROUTINE_UPDATEPERUSERIMMENABLING,
+ NOPARAM_ROUTINE_USERPWRCALLOUTWORKER,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ NOPARAM_ROUTINE_WAKERITFORSHTDWN,
+#endif
+ NOPARAM_ROUTINE_INIT_MESSAGE_PUMP,
+ NOPARAM_ROUTINE_UNINIT_MESSAGE_PUMP,
+#if (WIN32K_VERSION < NTDDI_VISTA)
+ NOPARAM_ROUTINE_LOADUSERAPIHOOK,
+#endif
+ ONEPARAM_ROUTINE_BEGINDEFERWNDPOS,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ ONEPARAM_ROUTINE_GETSENDMSGRECVR,
+#endif
+ ONEPARAM_ROUTINE_WINDOWFROMDC,
+ ONEPARAM_ROUTINE_ALLOWSETFOREGND,
+ ONEPARAM_ROUTINE_CREATEEMPTYCUROBJECT,
+#if (WIN32K_VERSION < NTDDI_VISTA)
+ ONEPARAM_ROUTINE_CREATESYSTEMTHREADS,
+#endif
+ ONEPARAM_ROUTINE_CSDDEUNINITIALIZE,
+ ONEPARAM_ROUTINE_DIRECTEDYIELD,
+ ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS,
+#if (WIN32K_VERSION < NTDDI_VISTA)
+ ONEPARAM_ROUTINE_GETCURSORPOS,
+#endif
+ ONEPARAM_ROUTINE_GETINPUTEVENT,
+ ONEPARAM_ROUTINE_GETKEYBOARDLAYOUT,
+ ONEPARAM_ROUTINE_GETKEYBOARDTYPE,
+ ONEPARAM_ROUTINE_GETPROCDEFLAYOUT,
+ ONEPARAM_ROUTINE_GETQUEUESTATUS,
+ ONEPARAM_ROUTINE_GETWINSTAINFO,
+#if (WIN32K_VERSION < NTDDI_VISTA)
+ ONEPARAM_ROUTINE_HANDLESYSTHRDCREATFAIL,
+#endif
+ ONEPARAM_ROUTINE_LOCKFOREGNDWINDOW,
+ ONEPARAM_ROUTINE_LOADFONTS,
+ ONEPARAM_ROUTINE_MAPDEKTOPOBJECT,
+ ONEPARAM_ROUTINE_MESSAGEBEEP,
+ ONEPARAM_ROUTINE_PLAYEVENTSOUND,
+ ONEPARAM_ROUTINE_POSTQUITMESSAGE,
+#if (WIN32K_VERSION < NTDDI_VISTA)
+ ONEPARAM_ROUTINE_PREPAREFORLOGOFF,
+#endif
+ ONEPARAM_ROUTINE_REALIZEPALETTE,
+ ONEPARAM_ROUTINE_REGISTERLPK,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ ONEPARAM_ROUTINE_REGISTERSYSTEMTHREAD,
+#endif
+ ONEPARAM_ROUTINE_REMOTERECONNECT,
+ ONEPARAM_ROUTINE_REMOTETHINWIRESTATUS,
+ ONEPARAM_ROUTINE_RELEASEDC,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ ONEPARAM_ROUTINE_REMOTENOTIFY,
+#endif
+ ONEPARAM_ROUTINE_REPLYMESSAGE,
+ ONEPARAM_ROUTINE_SETCARETBLINKTIME,
+ ONEPARAM_ROUTINE_SETDBLCLICKTIME,
+#if (WIN32K_VERSION < NTDDI_VISTA)
+ ONEPARAM_ROUTINE_SETIMESHOWSTATUS,
+#endif
+ ONEPARAM_ROUTINE_SETMESSAGEEXTRAINFO,
+ ONEPARAM_ROUTINE_SETPROCDEFLAYOUT,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ ONEPARAM_ROUTINE_SETWATERMARKSTRINGS,
+#endif
+ ONEPARAM_ROUTINE_SHOWCURSOR,
+ ONEPARAM_ROUTINE_SHOWSTARTGLASS,
+ ONEPARAM_ROUTINE_SWAPMOUSEBUTTON,
+ X_ROUTINE_WOWMODULEUNLOAD,
+#if (WIN32K_VERSION < NTDDI_VISTA)
+ X_ROUTINE_REMOTENOTIFY,
+#endif
+ HWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW,
+ HWND_ROUTINE_DWP_GETENABLEDPOPUP,
+ HWND_ROUTINE_GETWNDCONTEXTHLPID,
HWND_ROUTINE_REGISTERSHELLHOOKWINDOW,
- HWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW
+ HWND_ROUTINE_SETMSGBOX,
+ HWNDOPT_ROUTINE_SETPROGMANWINDOW,
+ HWNDOPT_ROUTINE_SETTASKMANWINDOW,
+ HWNDPARAM_ROUTINE_GETCLASSICOCUR,
+ HWNDPARAM_ROUTINE_CLEARWINDOWSTATE,
+ HWNDPARAM_ROUTINE_KILLSYSTEMTIMER,
+ HWNDPARAM_ROUTINE_SETDIALOGPOINTER,
+ HWNDPARAM_ROUTINE_SETVISIBLE,
+ HWNDPARAM_ROUTINE_SETWNDCONTEXTHLPID,
+ HWNDPARAM_ROUTINE_SETWINDOWSTATE,
+ HWNDLOCK_ROUTINE_WINDOWHASSHADOW, /* correct prefix ? */
+ HWNDLOCK_ROUTINE_ARRANGEICONICWINDOWS,
+ HWNDLOCK_ROUTINE_DRAWMENUBAR,
+ HWNDLOCK_ROUTINE_CHECKIMESHOWSTATUSINTHRD,
+ HWNDLOCK_ROUTINE_GETSYSMENUHANDLE,
+ HWNDLOCK_ROUTINE_REDRAWFRAME,
+ HWNDLOCK_ROUTINE_REDRAWFRAMEANDHOOK,
+ HWNDLOCK_ROUTINE_SETDLGSYSMENU,
+ HWNDLOCK_ROUTINE_SETFOREGROUNDWINDOW,
+ HWNDLOCK_ROUTINE_SETSYSMENU,
+ HWNDLOCK_ROUTINE_UPDATECKIENTRECT,
+ HWNDLOCK_ROUTINE_UPDATEWINDOW,
+ X_ROUTINE_IMESHOWSTATUSCHANGE,
+ TWOPARAM_ROUTINE_ENABLEWINDOW,
+ TWOPARAM_ROUTINE_REDRAWTITLE,
+ TWOPARAM_ROUTINE_SHOWOWNEDPOPUPS,
+ TWOPARAM_ROUTINE_SWITCHTOTHISWINDOW,
+ TWOPARAM_ROUTINE_UPDATEWINDOWS,
+ TWOPARAM_ROUTINE_VALIDATERGN,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ TWOPARAM_ROUTINE_CHANGEWNDMSGFILTER,
+ TWOPARAM_ROUTINE_GETCURSORPOS,
+#endif
+ TWOPARAM_ROUTINE_GETHDEVNAME,
+ TWOPARAM_ROUTINE_INITANSIOEM,
+ TWOPARAM_ROUTINE_NLSSENDIMENOTIFY,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ TWOPARAM_ROUTINE_REGISTERGHSTWND,
+#endif
+ TWOPARAM_ROUTINE_REGISTERLOGONPROCESS,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ TWOPARAM_ROUTINE_REGISTERSBLFROSTWND,
+#else
+ TWOPARAM_ROUTINE_REGISTERSYSTEMTHREAD,
+#endif
+ TWOPARAM_ROUTINE_REGISTERUSERHUNGAPPHANDLERS,
+ TWOPARAM_ROUTINE_SHADOWCLEANUP,
+ TWOPARAM_ROUTINE_REMOTESHADOWSTART,
+ TWOPARAM_ROUTINE_SETCARETPOS,
+ TWOPARAM_ROUTINE_SETCURSORPOS,
+#if (WIN32K_VERSION >=3D NTDDI_VISTA)
+ TWOPARAM_ROUTINE_SETPHYSCURSORPOS,
+#endif
+ TWOPARAM_ROUTINE_UNHOOKWINDOWSHOOK,
+ TWOPARAM_ROUTINE_WOWCLEANUP
};
=
DWORD
NTAPI
NtUserCallHwnd(
- DWORD Unknown0,
- DWORD Unknown1);
-
-#define HWNDLOCK_ROUTINE_ARRANGEICONICWINDOWS 0x54
-#define HWNDLOCK_ROUTINE_DRAWMENUBAR 0x55
-#define HWNDLOCK_ROUTINE_REDRAWFRAME 0x58
-#define HWNDLOCK_ROUTINE_SETFOREGROUNDWINDOW 0x5B
-#define HWNDLOCK_ROUTINE_UPDATEWINDOW 0x5E
+ HWND hWnd,
+ DWORD Routine);
+
BOOL
NTAPI
NtUserCallHwndLock(
HWND hWnd,
DWORD Routine);
=
-#define HWNDOPT_ROUTINE_SETPROGMANWINDOW 0x4A
-#define HWNDOPT_ROUTINE_SETTASKMANWINDOW 0x4B
HWND
NTAPI
NtUserCallHwndOpt(
@@ -512,16 +681,16 @@
DWORD
NTAPI
NtUserCallHwndParam(
- DWORD Unknown0,
- DWORD Unknown1,
- DWORD Unknown2);
+ HWND hWnd,
+ DWORD Param,
+ DWORD Routine);
=
DWORD
NTAPI
NtUserCallHwndParamLock(
- DWORD Unknown0,
- DWORD Unknown1,
- DWORD Unknown2);
+ HWND hWnd,
+ DWORD Param,
+ DWORD Routine);
=
BOOL
NTAPI
@@ -537,82 +706,17 @@
WPARAM wParam,
LPARAM lParam);
=
-#define NOPARAM_ROUTINE_CREATEMENU 0x0
-#define NOPARAM_ROUTINE_CREATEMENUPOPUP 0x1
-//#define ONEPARAM_ROUTINE_ENABLEPROCWNDGHSTING 0x2
-#define NOPARAM_ROUTINE_MSQCLEARWAKEMASK 0x3
-//#define ONEPARAM_ROUTINE_ALLOWFOREGNDACTIVATION 0x04
-#define NOPARAM_ROUTINE_DESTROY_CARET 0x5
-#define NOPARAM_ROUTINE_INIT_MESSAGE_PUMP 0x1b
-#define NOPARAM_ROUTINE_UNINIT_MESSAGE_PUMP 0x1c
-
-#define NOPARAM_ROUTINE_REGISTER_PRIMITIVE 0xffff0001 /* Private ROS */
-#define NOPARAM_ROUTINE_GETMESSAGEEXTRAINFO 0xffff0005
-#define NOPARAM_ROUTINE_ANYPOPUP 0xffff0006
-#define NOPARAM_ROUTINE_CSRSS_INITIALIZED 0xffff0007
DWORD
NTAPI
NtUserCallNoParam(
DWORD Routine);
=
-#define ONEPARAM_ROUTINE_WINDOWFROMDC 0x1f
-#define ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS 0x25
-#define ONEPARAM_ROUTINE_GETCURSORPOSITION 0x26
-#define ONEPARAM_ROUTINE_GETKEYBOARDLAYOUT 0x28
-#define ONEPARAM_ROUTINE_GETKEYBOARDTYPE 0x29
-#define ONEPARAM_ROUTINE_REALIZEPALETTE 0x35
-#define ONEPARAM_ROUTINE_RELEASEDC 0x39
-#define ONEPARAM_ROUTINE_SETCARETBLINKTIME 0x3b
-#define ONEPARAM_ROUTINE_SETMESSAGEEXTRAINFO 0x3e
-#define ONEPARAM_ROUTINE_SHOWCURSOR 0x40
-#define ONEPARAM_ROUTINE_SWAPMOUSEBUTTON 0x42
-#define ONEPARAM_ROUTINE_GETWNDCONTEXTHLPID 0x47
-
-#define ONEPARAM_ROUTINE_GETMENU 0xfffe0001 /* Private ROS */
-#define ONEPARAM_ROUTINE_ISWINDOWUNICODE 0xfffe0002
-#define ONEPARAM_ROUTINE_GETCARETINFO 0xfffe0007
-#define ONEPARAM_ROUTINE_SWITCHCARETSHOWING 0xfffe0008
-#define ONEPARAM_ROUTINE_ISWINDOWINDESTROY 0xfffe000c
-#define ONEPARAM_ROUTINE_ENABLEPROCWNDGHSTING 0xfffe000d
-#define ONEPARAM_ROUTINE_GETDESKTOPMAPPING 0xfffe000e
-#define ONEPARAM_ROUTINE_GETWINDOWINSTANCE 0xfffe0010
-#define ONEPARAM_ROUTINE_CREATECURICONHANDLE 0xfffe0025
-#define ONEPARAM_ROUTINE_MSQSETWAKEMASK 0xfffe0027
-#define ONEPARAM_ROUTINE_REGISTERUSERMODULE 0xfffe0031
DWORD
NTAPI
NtUserCallOneParam(
DWORD Param,
DWORD Routine);
=
-#define TWOPARAM_ROUTINE_ENABLEWINDOW 0x60
-#define TWOPARAM_ROUTINE_SHOWOWNEDPOPUPS 0x62
-#define TWOPARAM_ROUTINE_SWITCHTOTHISWINDOW 0x63
-
-#define TWOPARAM_ROUTINE_GETWINDOWRGNBOX 0xfffd0048 /* Private ROS */
-#define TWOPARAM_ROUTINE_GETWINDOWRGN 0xfffd0049
-#define TWOPARAM_ROUTINE_SETMENUBARHEIGHT 0xfffd0050
-#define TWOPARAM_ROUTINE_SETMENUITEMRECT 0xfffd0051
-#define TWOPARAM_ROUTINE_SETGUITHRDHANDLE 0xfffd0052
- #define MSQ_STATE_CAPTURE 0x1
- #define MSQ_STATE_ACTIVE 0x2
- #define MSQ_STATE_FOCUS 0x3
- #define MSQ_STATE_MENUOWNER 0x4
- #define MSQ_STATE_MOVESIZE 0x5
- #define MSQ_STATE_CARET 0x6
-#define TWOPARAM_ROUTINE_SETWNDCONTEXTHLPID 0xfffd0058
-#define TWOPARAM_ROUTINE_SETCARETPOS 0xfffd0060
-#define TWOPARAM_ROUTINE_GETWINDOWINFO 0xfffd0061
-#define TWOPARAM_ROUTINE_REGISTERLOGONPROC 0xfffd0062
-#define TWOPARAM_ROUTINE_GETSYSCOLORBRUSHES 0xfffd0063
-#define TWOPARAM_ROUTINE_GETSYSCOLORPENS 0xfffd0064
-#define TWOPARAM_ROUTINE_GETSYSCOLORS 0xfffd0065
-#define TWOPARAM_ROUTINE_SETSYSCOLORS 0xfffd0066 // use NtUserSetSys=
Colors
-#define TWOPARAM_ROUTINE_ROS_SHOWWINDOW 0x1000
-#define TWOPARAM_ROUTINE_ROS_ISACTIVEICON 0x1001
-#define TWOPARAM_ROUTINE_ROS_NCDESTROY 0x1002
-#define TWOPARAM_ROUTINE_ROS_REGSYSCLASSES 0x1003
-#define TWOPARAM_ROUTINE_ROS_UPDATEUISTATE 0x1004
DWORD
NTAPI
NtUserCallTwoParam(
@@ -638,19 +742,20 @@
DWORD
STDCALL
NtUserCheckImeHotKey(
- DWORD dwUnknown1,
- DWORD dwUnknown2);
+ DWORD dwUnknown1,
+ DWORD dwUnknown2);
=
HWND NTAPI
-NtUserChildWindowFromPointEx(HWND Parent,
- LONG x,
- LONG y,
- UINT Flags);
+NtUserChildWindowFromPointEx(
+ HWND Parent,
+ LONG x,
+ LONG y,
+ UINT Flags);
=
BOOL
NTAPI
NtUserClipCursor(
- RECT *lpRect);
+ RECT *lpRect);
=
BOOL
NTAPI
@@ -669,9 +774,9 @@
DWORD
NTAPI
NtUserConsoleControl(
- DWORD dwUnknown1,
- DWORD dwUnknown2,
- DWORD dwUnknown3);
+ DWORD dwUnknown1,
+ DWORD dwUnknown2,
+ DWORD dwUnknown3);
=
DWORD
NTAPI
@@ -2367,8 +2472,54 @@
=
=
/* NtUserBad
-* ReactOS-specific NtUser calls and their related structures, both which=
shouldn't exist.
+ * ReactOS-specific NtUser calls and their related structures, both which =
shouldn't exist.
*/
+
+#define NOPARAM_ROUTINE_REGISTER_PRIMITIVE 0xffff0001
+#define NOPARAM_ROUTINE_GETMESSAGEEXTRAINFO 0xffff0005
+#define NOPARAM_ROUTINE_ANYPOPUP 0xffff0006
+#define NOPARAM_ROUTINE_CSRSS_INITIALIZED 0xffff0007
+#define ONEPARAM_ROUTINE_GETMENU 0xfffe0001 // usermode
+#define ONEPARAM_ROUTINE_ISWINDOWUNICODE 0xfffe0002
+#define ONEPARAM_ROUTINE_GETCARETINFO 0xfffe0007
+#define ONEPARAM_ROUTINE_SWITCHCARETSHOWING 0xfffe0008
+#define ONEPARAM_ROUTINE_ISWINDOWINDESTROY 0xfffe000c
+#define ONEPARAM_ROUTINE_ENABLEPROCWNDGHSTING 0xfffe000d
+#define ONEPARAM_ROUTINE_GETDESKTOPMAPPING 0xfffe000e
+#define ONEPARAM_ROUTINE_GETWINDOWINSTANCE 0xfffe0010
+#define ONEPARAM_ROUTINE_CREATECURICONHANDLE 0xfffe0025 // CREATE_EMPTY_C=
URSOR_OBJECT ?
+#define ONEPARAM_ROUTINE_MSQSETWAKEMASK 0xfffe0027
+#define ONEPARAM_ROUTINE_REGISTERUSERMODULE 0xfffe0031
+#define ONEPARAM_ROUTINE_GETWNDCONTEXTHLPID 0xfffe0047 // use HWND_ROUTI=
NE_GETWNDCONTEXTHLPID
+#define ONEPARAM_ROUTINE_GETCURSORPOSITION 0xfffe0048 // use ONEPARAM_ =
or TWOPARAM routine ?
+
+#define TWOPARAM_ROUTINE_ENABLEWINDOW 0x60
+#define TWOPARAM_ROUTINE_SHOWOWNEDPOPUPS 0x62
+#define TWOPARAM_ROUTINE_SWITCHTOTHISWINDOW 0x63
+#define TWOPARAM_ROUTINE_GETWINDOWRGNBOX 0xfffd0048 // user mode
+#define TWOPARAM_ROUTINE_GETWINDOWRGN 0xfffd0049 // user mode
+#define TWOPARAM_ROUTINE_SETMENUBARHEIGHT 0xfffd0050
+#define TWOPARAM_ROUTINE_SETMENUITEMRECT 0xfffd0051
+#define TWOPARAM_ROUTINE_SETGUITHRDHANDLE 0xfffd0052
+ #define MSQ_STATE_CAPTURE 0x1
+ #define MSQ_STATE_ACTIVE 0x2
+ #define MSQ_STATE_FOCUS 0x3
+ #define MSQ_STATE_MENUOWNER 0x4
+ #define MSQ_STATE_MOVESIZE 0x5
+ #define MSQ_STATE_CARET 0x6
+#define TWOPARAM_ROUTINE_SETWNDCONTEXTHLPID 0xfffd0058 // use HWNDPARAM_RO=
UTINE_SETWNDCONTEXTHLPID
+#define TWOPARAM_ROUTINE_SETCARETPOS 0xfffd0060
+#define TWOPARAM_ROUTINE_GETWINDOWINFO 0xfffd0061
+#define TWOPARAM_ROUTINE_REGISTERLOGONPROC 0xfffd0062
+#define TWOPARAM_ROUTINE_GETSYSCOLORBRUSHES 0xfffd0063
+#define TWOPARAM_ROUTINE_GETSYSCOLORPENS 0xfffd0064
+#define TWOPARAM_ROUTINE_GETSYSCOLORS 0xfffd0065
+#define TWOPARAM_ROUTINE_SETSYSCOLORS 0xfffd0066 // use NtUserSetSys=
Colors
+#define TWOPARAM_ROUTINE_ROS_SHOWWINDOW 0x1000
+#define TWOPARAM_ROUTINE_ROS_ISACTIVEICON 0x1001
+#define TWOPARAM_ROUTINE_ROS_NCDESTROY 0x1002
+#define TWOPARAM_ROUTINE_ROS_REGSYSCLASSES 0x1003
+#define TWOPARAM_ROUTINE_ROS_UPDATEUISTATE 0x1004
=
DWORD
NTAPI
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win3=
2k/ntuser/ntstubs.c?rev=3D32743&r1=3D32742&r2=3D32743&view=3Ddiff
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c (original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c Fri Mar 21 21:53=
:56 2008
@@ -64,54 +64,6 @@
UNIMPLEMENTED;
return 0;
}
-
-DWORD
-STDCALL
-NtUserCallHwnd(
- DWORD Unknown0,
- DWORD Unknown1)
-{
- switch (Unknown0)
- {
- case HWND_ROUTINE_REGISTERSHELLHOOKWINDOW:
- if (IntIsWindow((HWND) Unknown1))
- return IntRegisterShellHookWindow((HWND) Unknown1);
- return FALSE;
- break;
- case HWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW:
- if (IntIsWindow((HWND) Unknown1))
- return IntDeRegisterShellHookWindow((HWND) Unknown1);
- return FALSE;
- }
- UNIMPLEMENTED
-
- return 0;
-}
-
-DWORD
-STDCALL
-NtUserCallHwndParam(
- DWORD Unknown0,
- DWORD Unknown1,
- DWORD Unknown2)
-{
- UNIMPLEMENTED
-
- return 0;
-}
-
-DWORD
-STDCALL
-NtUserCallHwndParamLock(
- DWORD Unknown0,
- DWORD Unknown1,
- DWORD Unknown2)
-{
- UNIMPLEMENTED
-
- return 0;
-}
-
=
DWORD
STDCALL
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win3=
2k/ntuser/simplecall.c?rev=3D32743&r1=3D32742&r2=3D32743&view=3Ddiff
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c (original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c Fri Mar 21 21=
:53:56 2008
@@ -823,21 +823,68 @@
HWND
STDCALL
NtUserCallHwndOpt(
- HWND Param,
+ HWND hWnd,
DWORD Routine)
{
switch (Routine)
{
case HWNDOPT_ROUTINE_SETPROGMANWINDOW:
- GetW32ThreadInfo()->Desktop->hProgmanWindow =3D Param;
+ GetW32ThreadInfo()->Desktop->hProgmanWindow =3D hWnd;
break;
=
case HWNDOPT_ROUTINE_SETTASKMANWINDOW:
- GetW32ThreadInfo()->Desktop->hTaskManWindow =3D Param;
- break;
- }
-
- return Param;
+ GetW32ThreadInfo()->Desktop->hTaskManWindow =3D hWnd;
+ break;
+ }
+
+ return hWnd;
}
=
+DWORD
+STDCALL
+NtUserCallHwnd(
+ HWND hWnd,
+ DWORD Routine)
+{
+ switch (Routine)
+ {
+ case HWND_ROUTINE_REGISTERSHELLHOOKWINDOW:
+ if (IntIsWindow(hWnd))
+ return IntRegisterShellHookWindow(hWnd);
+ return FALSE;
+ break;
+ case HWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW:
+ if (IntIsWindow(hWnd))
+ return IntDeRegisterShellHookWindow(hWnd);
+ return FALSE;
+ }
+ UNIMPLEMENTED;
+
+ return 0;
+}
+
+DWORD
+STDCALL
+NtUserCallHwndParam(
+ HWND hWnd,
+ DWORD Param,
+ DWORD Routine)
+{
+ UNIMPLEMENTED;
+
+ return 0;
+}
+
+DWORD
+STDCALL
+NtUserCallHwndParamLock(
+ HWND hWnd,
+ DWORD Param,
+ DWORD Routine)
+{
+ UNIMPLEMENTED;
+
+ return 0;
+}
+
/* EOF */