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 */