Author: tkreuzer Date: Fri Mar 21 22:12:01 2008 New Revision: 32744
URL: http://svn.reactos.org/svn/reactos?rev=3D32744&view=3Drev Log: add tests for NtUserCallHwnd, NtUserCallHwndLock, NtUserCallHwndOpt, NtUser= CallHwndParam, NtUserCallHwndParamLock, NtUserCallNoParam, NtUserCallOnePar= am and NtUserSystemParametersInfo
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwnd.c (with props) trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndLock.c (with pr= ops) trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndOpt.c (with pro= ps) trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParam.c (with p= rops) trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParamLock.c (wi= th props) trunk/rostests/apitests/w32knapi/ntuser/NtUserCallNoParam.c (with pro= ps) trunk/rostests/apitests/w32knapi/ntuser/NtUserCallOneParam.c (with pr= ops) trunk/rostests/apitests/w32knapi/ntuser/NtUserSystemParametersInfo.c = (with props) Modified: trunk/rostests/apitests/w32knapi/ntuser/NtUserScrollDC.c trunk/rostests/apitests/w32knapi/testlist.c trunk/rostests/apitests/w32knapi/w32knapi.c trunk/rostests/apitests/w32knapi/w32knapi.h trunk/rostests/apitests/w32knapi/w32knapi.rbuild
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwnd.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserCallHwnd.c?rev=3D32744&view=3Dauto =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=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/rostests/apitests/w32knapi/ntuser/NtUserCallHwnd.c (added) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwnd.c Fri Mar 21 22:= 12:01 2008 @@ -1,0 +1,56 @@ + +INT +Test_HwndRoutine_DeregisterShellHookWindow(PTESTINFO pti, HWND hWnd) +{ + TEST(NtUserCallHwnd(hWnd, _HWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW) =3D=3D= TRUE); + return APISTATUS_NORMAL; +} + +INT +Test_HwndRoutine_GetWindowContextHelpId (PTESTINFO pti, HWND hWnd) +{ + TEST(NtUserCallHwndParam(hWnd, 0xbadb00b, _HWNDPARAM_ROUTINE_SETWNDCONTEX= THLPID) =3D=3D TRUE); + TEST(NtUserCallHwnd(hWnd, _HWND_ROUTINE_GETWNDCONTEXTHLPID) =3D=3D 0xbadb= 00b); + return APISTATUS_NORMAL; +} + +INT +Test_HwndRoutine_SetMsgBox(PTESTINFO pti, HWND hWnd) +{ + TEST(NtUserCallHwnd(hWnd, 0x49) !=3D FALSE); + return APISTATUS_NORMAL; +} + + + +INT +Test_NtUserCallHwnd(PTESTINFO pti) +{ + HWND hWnd; + + hWnd =3D CreateWindowA("BUTTON", + "Test", + BS_PUSHBUTTON | WS_VISIBLE, + 0, + 0, + 50, + 30, + NULL, + NULL, + g_hInstance, + 0); + ASSERT(hWnd); + + SetLastError(ERROR_SUCCESS); + TEST(NtUserCallHwnd(hWnd, 0x44) =3D=3D FALSE); + Test_HwndRoutine_DeregisterShellHookWindow(pti, hWnd); /* 0x45 */ + TEST(NtUserCallHwnd(hWnd, 0x46) =3D=3D FALSE); // DWP_GetEnabledPopup + Test_HwndRoutine_GetWindowContextHelpId (pti, hWnd); /* 0x47 */ + TEST(NtUserCallHwnd(hWnd, 0x48) =3D=3D TRUE); + Test_HwndRoutine_SetMsgBox(pti, hWnd); /* 0x49 */ + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + + DestroyWindow(hWnd); + + return APISTATUS_NORMAL; +}
Propchange: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwnd.c ---------------------------------------------------------------------------= --- svn:eol-style =3D native
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndLock.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserCallHwndLock.c?rev=3D32744&view=3Dauto =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=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/rostests/apitests/w32knapi/ntuser/NtUserCallHwndLock.c (added) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndLock.c Fri Mar 21= 22:12:01 2008 @@ -1,0 +1,100 @@ + + +HMENU g_hMenu; + +INT +Test_HwndLockRoutine_WindowHasShadow (PTESTINFO pti, HWND hWnd) /* 0x53 */ +{ +// TEST(NtUserCallHwndLock(hWnd, 0x53) =3D=3D 0); + return APISTATUS_NORMAL; +} + + +INT +Test_HwndLockRoutine_ArrangeIconicWindows(PTESTINFO pti, HWND hWnd) /* 0x5= 4 */ +{ +// TEST(NtUserCallHwndLock(hWnd, _HWNDLOCK_ROUTINE_ARRANGEICONICWINDOWS) = =3D=3D 0); + return APISTATUS_NORMAL; +} + +INT +Test_HwndLockRoutine_DrawMenuBar(PTESTINFO pti, HWND hWnd) /* 0x55 */ +{ + TEST(NtUserCallHwndLock(hWnd, 0x55) =3D=3D 1); + return APISTATUS_NORMAL; +} + +INT +Test_HwndLockRoutine_CheckImeShowStatusInThread(PTESTINFO pti, HWND hWnd) = /* 0x56 */ +{ + TEST(NtUserCallHwndLock(hWnd, 0x56) !=3D 0); + return APISTATUS_NORMAL; +} + +INT +Test_HwndLockRoutine_GetSysMenuHandle(PTESTINFO pti, HWND hWnd) /* 0x57 */ +{ + NtUserCallHwndLock(hWnd, 0x5c); +// HMENU hMenu =3D (HMENU)NtUserCallHwndLock(hWnd, 0x57); +// TEST(hMenu !=3D 0); + return APISTATUS_NORMAL; +} + +INT +Test_HwndLockRoutine_RedrawFrame(PTESTINFO pti, HWND hWnd) /* 0x58 */ +{ +// TEST(NtUserCallHwndLock(hWnd, 0x68) !=3D 0); + return APISTATUS_NORMAL; +} + +INT +Test_HwndLockRoutine_UpdateWindow(PTESTINFO pti, HWND hWnd) /* 0x5e */ +{ + TEST(NtUserCallHwndLock(hWnd, 0x5e) =3D=3D 1); + return APISTATUS_NORMAL; +} + +INT +Test_NtUserCallHwndLock(PTESTINFO pti) +{ + HWND hWnd; + g_hMenu =3D CreateMenu(); + + hWnd =3D CreateWindowA("BUTTON", + "Test", + BS_PUSHBUTTON | WS_VISIBLE, + 0, + 0, + 50, + 30, + NULL, + g_hMenu, + g_hInstance, + 0); + ASSERT(hWnd); + + SetLastError(ERROR_SUCCESS); + TEST(NtUserCallHwndLock((HWND)-22, 999) =3D=3D 0); + TEST(GetLastError() =3D=3D ERROR_INVALID_WINDOW_HANDLE); + + SetLastError(ERROR_SUCCESS); + TEST(NtUserCallHwndLock((HWND)0, 0x55) =3D=3D 0); + TEST(GetLastError() =3D=3D ERROR_INVALID_WINDOW_HANDLE); + + SetLastError(ERROR_SUCCESS); + TEST(NtUserCallHwndLock(hWnd, 999) =3D=3D 0); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + + Test_HwndLockRoutine_WindowHasShadow (pti, hWnd); /* 0x53 */ + Test_HwndLockRoutine_ArrangeIconicWindows(pti, hWnd); + Test_HwndLockRoutine_DrawMenuBar(pti, hWnd); + Test_HwndLockRoutine_CheckImeShowStatusInThread(pti, hWnd); + Test_HwndLockRoutine_GetSysMenuHandle(pti, hWnd); + Test_HwndLockRoutine_RedrawFrame(pti, hWnd); + + Test_HwndLockRoutine_UpdateWindow(pti, hWnd); + + DestroyWindow(hWnd); + + return APISTATUS_NORMAL; +}
Propchange: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndLock.c ---------------------------------------------------------------------------= --- svn:eol-style =3D native
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndOpt.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserCallHwndOpt.c?rev=3D32744&view=3Dauto =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=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/rostests/apitests/w32knapi/ntuser/NtUserCallHwndOpt.c (added) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndOpt.c Fri Mar 21 = 22:12:01 2008 @@ -1,0 +1,25 @@ + + +INT +Test_HwndOptRoutine_SetProgmanWindow(PTESTINFO pti) /* 0x4a */ +{ +// NtUserCallHwndOpt(hWnd, HWNDOPT_ROUTINE_SETPROGMANWINDOW); + return APISTATUS_NORMAL; +} + +INT +Test_HwndOptRoutine_SetTaskmanWindow (PTESTINFO pti) /* 0x4b */ +{ +// NtUserCallHwndOpt(hWnd, HWNDOPT_ROUTINE_SETTASKMANWINDOW); + return APISTATUS_NORMAL; +} + +INT +Test_NtUserCallHwndOpt(PTESTINFO pti) +{ + + Test_HwndOptRoutine_SetProgmanWindow(pti); /* 0x4a */ + Test_HwndOptRoutine_SetTaskmanWindow (pti); /* 0x4b */ + + return APISTATUS_NORMAL; +}
Propchange: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndOpt.c ---------------------------------------------------------------------------= --- svn:eol-style =3D native
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParam.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserCallHwndParam.c?rev=3D32744&view=3Dauto =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=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/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParam.c (added) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParam.c Fri Mar 2= 1 22:12:01 2008 @@ -1,0 +1,34 @@ + +INT +Test_HwndParamRoutine_SetWindowContextHelpId (PTESTINFO pti, HWND hWnd) +{ + TEST(NtUserCallHwndParam(hWnd, 12345, _HWNDPARAM_ROUTINE_SETWNDCONTEXTHLP= ID) =3D=3D TRUE); + TEST(NtUserCallHwnd(hWnd, _HWND_ROUTINE_GETWNDCONTEXTHLPID) =3D=3D 12345); + return APISTATUS_NORMAL; +} + + +INT +Test_NtUserCallHwndParam(PTESTINFO pti) +{ + HWND hWnd; + + hWnd =3D CreateWindowA("BUTTON", + "Test", + BS_PUSHBUTTON | WS_VISIBLE, + 0, + 0, + 50, + 30, + NULL, + NULL, + g_hInstance, + 0); + ASSERT(hWnd); + + Test_HwndParamRoutine_SetWindowContextHelpId (pti, hWnd); + + DestroyWindow(hWnd); + + return APISTATUS_NORMAL; +}
Propchange: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParam.c ---------------------------------------------------------------------------= --- svn:eol-style =3D native
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParamLock.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserCallHwndParamLock.c?rev=3D32744&view=3Dauto =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=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/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParamLock.c (adde= d) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParamLock.c Fri M= ar 21 22:12:01 2008 @@ -1,0 +1,7 @@ + + +INT +Test_NtUserCallHwndParamLock(PTESTINFO pti) +{ + return APISTATUS_NORMAL; +}
Propchange: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallHwndParamLock= .c ---------------------------------------------------------------------------= --- svn:eol-style =3D native
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallNoParam.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserCallNoParam.c?rev=3D32744&view=3Dauto =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=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/rostests/apitests/w32knapi/ntuser/NtUserCallNoParam.c (added) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserCallNoParam.c Fri Mar 21 = 22:12:01 2008 @@ -1,0 +1,69 @@ + +INT +Test_NoParamRoutine_CreateMenu(PTESTINFO pti) /* 0 */ +{ + HMENU hMenu; + + hMenu =3D (HMENU)NtUserCallNoParam(_NOPARAM_ROUTINE_CREATEMENU); + TEST(IsMenu(hMenu) =3D=3D TRUE); + DestroyMenu(hMenu); + + return APISTATUS_NORMAL; +} + +INT +Test_NoParamRoutine_CreatePopupMenu(PTESTINFO pti) /* 1 */ +{ + HMENU hMenu; + + hMenu =3D (HMENU)NtUserCallNoParam(_NOPARAM_ROUTINE_CREATEMENUPOPUP); + TEST(IsMenu(hMenu) =3D=3D TRUE); + DestroyMenu(hMenu); + + return APISTATUS_NORMAL; +} + +INT +Test_NoParamRoutine_DisableProcessWindowsGhosting(PTESTINFO pti) /* 2 */ +{ + return APISTATUS_NORMAL; +} + +INT +Test_NoParamRoutine_ClearWakeMask(PTESTINFO pti) /* 3 */ +{ + return APISTATUS_NORMAL; +} + +INT +Test_NoParamRoutine_AllowForegroundActivation(PTESTINFO pti) /* 4 */ +{ + return APISTATUS_NORMAL; +} + +INT +Test_NoParamRoutine_DestroyCaret(PTESTINFO pti) /* 5 */ +{ + return APISTATUS_NORMAL; +} + +INT +Test_NoParamRoutine_LoadUserApiHook(PTESTINFO pti) /* 0x1d */ +{ + DWORD dwRet; + dwRet =3D NtUserCallNoParam(_NOPARAM_ROUTINE_LOADUSERAPIHOOK); + +// TEST(dwRet !=3D 0); + return APISTATUS_NORMAL; +} + + +INT +Test_NtUserCallNoParam(PTESTINFO pti) +{ + Test_NoParamRoutine_CreateMenu(pti); + Test_NoParamRoutine_CreatePopupMenu(pti); + Test_NoParamRoutine_LoadUserApiHook(pti); /* 0x1d */ + + return APISTATUS_NORMAL; +}
Propchange: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallNoParam.c ---------------------------------------------------------------------------= --- svn:eol-style =3D native
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallOneParam.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserCallOneParam.c?rev=3D32744&view=3Dauto =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=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/rostests/apitests/w32knapi/ntuser/NtUserCallOneParam.c (added) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserCallOneParam.c Fri Mar 21= 22:12:01 2008 @@ -1,0 +1,73 @@ + +INT +Test_OneParamRoutine_BeginDeferWindowPos(PTESTINFO pti) /* 0x1e */ +{ + HDWP hWinPosInfo; + + hWinPosInfo =3D (HDWP)NtUserCallOneParam(5, 0x1e); + TEST(hWinPosInfo !=3D 0); + TEST(EndDeferWindowPos(hWinPosInfo) !=3D 0); + + return APISTATUS_NORMAL; +} + +INT +Test_OneParamRoutine_WindowFromDC(PTESTINFO pti) /* 0x1f */ +{ + HDC hDC =3D GetDC(NULL); + HWND hWnd; + + hWnd =3D (HWND)NtUserCallOneParam((DWORD)hDC, 0x1f); + TEST(hWnd !=3D 0); + TEST(IsWindow(hWnd)); + TEST(hWnd =3D=3D GetDesktopWindow()); + + return APISTATUS_NORMAL; +} + +INT +Test_OneParamRoutine_MapDesktopObject(PTESTINFO pti) /* 0x30 */ +{ + DWORD pObject; + HWND hWnd; + HMENU hMenu; + + hWnd =3D GetDesktopWindow(); + pObject =3D NtUserCallOneParam((DWORD)hWnd, _ONEPARAM_ROUTINE_MAPDEKTOPOB= JECT); + TEST(pObject > 0); + TEST(pObject < 0x80000000); + + hMenu =3D CreateMenu(); + pObject =3D NtUserCallOneParam((DWORD)hMenu, _ONEPARAM_ROUTINE_MAPDEKTOPO= BJECT); + TEST(pObject > 0); + TEST(pObject < 0x80000000); + + return APISTATUS_NORMAL; +} + +INT +Test_OneParamRoutine_SwapMouseButtons(PTESTINFO pti) /* 0x42 */ +{ + BOOL bInverse; + + NtUserCallOneParam(TRUE, _ONEPARAM_ROUTINE_SWAPMOUSEBUTTON); + bInverse =3D (BOOL)NtUserCallOneParam(FALSE, _ONEPARAM_ROUTINE_SWAPMOUSEB= UTTON); + TEST(bInverse =3D=3D TRUE); + bInverse =3D (BOOL)NtUserCallOneParam(FALSE, _ONEPARAM_ROUTINE_SWAPMOUSEB= UTTON); + TEST(bInverse =3D=3D FALSE); + + // TODO: test other values + return APISTATUS_NORMAL; +} + +INT +Test_NtUserCallOneParam(PTESTINFO pti) +{ + Test_OneParamRoutine_BeginDeferWindowPos(pti); /* 0x1e */ + Test_OneParamRoutine_WindowFromDC(pti); /* 0x1f */ + Test_OneParamRoutine_MapDesktopObject(pti); /* 0x30 */ + + Test_OneParamRoutine_SwapMouseButtons(pti); /* 0x42 */ + + return APISTATUS_NORMAL; +}
Propchange: trunk/rostests/apitests/w32knapi/ntuser/NtUserCallOneParam.c ---------------------------------------------------------------------------= --- svn:eol-style =3D native
Modified: trunk/rostests/apitests/w32knapi/ntuser/NtUserScrollDC.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserScrollDC.c?rev=3D32744&r1=3D32743&r2=3D32744&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/rostests/apitests/w32knapi/ntuser/NtUserScrollDC.c (original) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserScrollDC.c Fri Mar 21 22:= 12:01 2008 @@ -74,7 +74,6 @@ Result =3D NtUserScrollDC((HDC)0x123456, 10, 20, &rcScroll, &rcClip, hRgn= , &rcUpdate); RTEST(Result =3D=3D 0); RTEST(GetLastError() =3D=3D ERROR_SUCCESS); - printf("%ld\n", GetLastError()); =
/* Test invalid update rect */ SetLastError(ERROR_SUCCESS);
Added: trunk/rostests/apitests/w32knapi/ntuser/NtUserSystemParametersInfo.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/nt= user/NtUserSystemParametersInfo.c?rev=3D32744&view=3Dauto =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=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/rostests/apitests/w32knapi/ntuser/NtUserSystemParametersInfo.c (a= dded) +++ trunk/rostests/apitests/w32knapi/ntuser/NtUserSystemParametersInfo.c Fr= i Mar 21 22:12:01 2008 @@ -1,0 +1,359 @@ + +LONG +QueryUserRegValueW(LPWSTR pszSubKey, LPWSTR pszValueName, PVOID pData, LPD= WORD cbSize, LPDWORD pType) +{ + HKEY hKey; + LONG ret; + + RegOpenKeyExW(HKEY_CURRENT_USER, pszSubKey, 0, KEY_QUERY_VALUE, &hKey); + ret =3D RegQueryValueExW(hKey, pszValueName, NULL, pType, (LPBYTE)pData, = cbSize); + RegCloseKey(hKey); + return ret; +} + + +HWND +CreateTestWindow() +{ + WNDCLASSA wc; + + wc.style =3D 0; + wc.lpfnWndProc =3D DefWindowProcA; + wc.cbClsExtra =3D 0; + wc.cbWndExtra =3D 0; + wc.hInstance =3D g_hInstance; + wc.hIcon =3D NULL; + wc.hCursor =3D NULL; + wc.hbrBackground =3D NULL; + wc.lpszMenuName =3D NULL; + wc.lpszClassName =3D "testclass"; + + RegisterClassA(&wc); + return CreateWindowA("testclass", + "testwnd", + WS_VISIBLE, + 0, + 0, + 50, + 30, + NULL, + NULL, + g_hInstance, + 0); + +} + +void +Test_SPI_87_88(PTESTINFO pti) +{ + DWORD dwRet =3D 0xdeadbeef; + + TEST(NtUserSystemParametersInfo(87, 0, &dwRet, 0) =3D=3D TRUE); + TEST(dwRet =3D=3D 0xdeadbeef); + dwRet++; + TEST(NtUserSystemParametersInfo(87, 0, &dwRet, 0) =3D=3D TRUE); + + + dwRet--; + TEST(NtUserSystemParametersInfo(87, 0, &dwRet, 0) =3D=3D TRUE); + + +} + +void +Test_NtUserSystemParametersInfo_Params(PTESTINFO pti) +{ +// UINT uint; + DWORD data[1000]; + UINT i, uint; +#if 1 + /* Test normal */ + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(SPI_GETFOCUSBORDERHEIGHT, 0, &uint, 0) = =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + + /* Test invalid SPI code */ + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(7, 0, &data, 0) =3D=3D FALSE); + TEST(GetLastError() =3D=3D ERROR_INVALID_PARAMETER); + + /* Test wrong cbSize member */ + ACCESSTIMEOUT ato; + ato.cbSize =3D 1; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(SPI_GETACCESSTIMEOUT, 0, &ato, 0) =3D=3D = FALSE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); +#endif + /* Test undocumented, but valid SPI codes */ + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4112, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] <=3D 1); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4113, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + data[0] =3D 0; + NtUserSystemParametersInfo(4112, 0, &data, 0); + TEST(data[0] =3D=3D 1); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4136, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4137, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4138, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4139, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4140, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4141, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4142, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4143, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4144, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4145, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4146, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4147, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4148, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4149, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4150, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4151, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4152, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4153, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4154, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4155, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4156, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] !=3D 0xdeadbeef); + TEST(data[1] =3D=3D 0xdeadbeef); + + for(i =3D 0; i < 1000; i++) data[i] =3D 0xbeefdead; + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(4157, 0, &data, 0) =3D=3D TRUE); + TEST(GetLastError() =3D=3D ERROR_SUCCESS); + TEST(data[0] =3D=3D 0xbeefdead); + TEST(data[1] =3D=3D 0xbeefdead); + + /* Test invalid pointer */ + SetLastError(ERROR_SUCCESS); + TEST(NtUserSystemParametersInfo(SPI_GETFOCUSBORDERHEIGHT, 0, (PVOID)0x800= 00000, 0) =3D=3D FALSE); + TEST(GetLastError() =3D=3D ERROR_NOACCESS); + for(i =3D 0; i < 1000; i++) data[i] =3D 0xdeadbeef; + + /* test wrong bools */ +} + +void +Test_NtUserSystemParametersInfo_fWinIni(PTESTINFO pti) +{ + ACCESSTIMEOUT ato; + UINT uFocusBorderHeight; + WCHAR Buffer[6]; + DWORD cbSize; + + ato.cbSize =3D sizeof(ato); + NtUserSystemParametersInfo(SPI_GETACCESSTIMEOUT, 0, &ato, 0); + ato.iTimeOutMSec++; + NtUserSystemParametersInfo(SPI_SETACCESSTIMEOUT, 0, &ato, 0); + ato.iTimeOutMSec--; + + NtUserSystemParametersInfo(SPI_GETFOCUSBORDERHEIGHT, 0, &uFocusBorderHeig= ht, 0); + NtUserSystemParametersInfo(SPI_SETFOCUSBORDERHEIGHT, 0, &uFocusBorderHeig= ht, SPIF_UPDATEINIFILE); + + NtUserSystemParametersInfo(SPI_SETACCESSTIMEOUT, 0, &ato, 0); + + cbSize =3D 6; + QueryUserRegValueW(L"Control Panel\Accessibility\TimeOut", L"TimeToWait= ", &Buffer, &cbSize, NULL); + +} + +void +Test_SPI_GETSETBEEP(PTESTINFO pti) +{ + BOOL bOrig, bTemp =3D 0; + WCHAR szReg[10]; + DWORD cbSize; + + /* Get original value */ + NtUserSystemParametersInfo(SPI_GETBEEP, 0, &bOrig, 0); + + /* Value 0 */ + NtUserSystemParametersInfo(SPI_SETBEEP, 0, NULL, SPIF_UPDATEINIFILE); + NtUserSystemParametersInfo(SPI_GETBEEP, 0, &bTemp, 0); + TEST(bTemp =3D=3D 0); + cbSize =3D sizeof(szReg); + TEST(QueryUserRegValueW(L"Control Panel\Sound", L"Beep", &szReg, &cbSize= , NULL) =3D=3D ERROR_SUCCESS); + TEST(wcscmpi(szReg, L"No") =3D=3D 0); + + /* Value 1 */ + NtUserSystemParametersInfo(SPI_SETBEEP, 1, NULL, SPIF_UPDATEINIFILE); + NtUserSystemParametersInfo(SPI_GETBEEP, 0, &bTemp, 0); + TEST(bTemp =3D=3D 1); + cbSize =3D sizeof(szReg); + TEST(QueryUserRegValueW(L"Control Panel\Sound", L"Beep", &szReg, &cbSize= , NULL) =3D=3D ERROR_SUCCESS); + TEST(wcscmpi(szReg, L"Yes") =3D=3D 0); + + /* Value 2 */ + NtUserSystemParametersInfo(SPI_SETBEEP, 2, NULL, SPIF_UPDATEINIFILE); + NtUserSystemParametersInfo(SPI_GETBEEP, 0, &bTemp, 0); + TEST(bTemp =3D=3D 1); + cbSize =3D sizeof(szReg); + TEST(QueryUserRegValueW(L"Control Panel\Sound", L"Beep", &szReg, &cbSize= , NULL) =3D=3D ERROR_SUCCESS); + TEST(wcscmpi(szReg, L"Yes") =3D=3D 0); + + /* Restore original value */ + NtUserSystemParametersInfo(SPI_SETBEEP, 0, &bOrig, SPIF_UPDATEINIFILE); +} + +INT +Test_SPI_SETDESKWALLPAPER(PTESTINFO pti) +{ + /* Get old Wallpaper */ +// NtUserSystemParametersInfo(SPI_GET_DESKWALLPAPER, 0, + +// TEST(NtUserSystemParametersInfo(SPI_SETDESKWALLPAPER, 0, &hNewWallPaper= , 0) =3D=3D 0); + return 0; +} + +INT +Test_NtUserSystemParametersInfo(PTESTINFO pti) +{ + HWND hWnd; + + hWnd =3D CreateTestWindow(); +// ASSERT(hWnd); + Test_NtUserSystemParametersInfo_Params(pti); + + Test_NtUserSystemParametersInfo_fWinIni(pti); + + Test_SPI_GETSETBEEP(pti); + Test_SPI_SETDESKWALLPAPER(pti); + + Test_SPI_87_88(pti); + + DestroyWindow(hWnd); + + return APISTATUS_NORMAL; +}
Propchange: trunk/rostests/apitests/w32knapi/ntuser/NtUserSystemParametersI= nfo.c ---------------------------------------------------------------------------= --- svn:eol-style =3D native
Modified: trunk/rostests/apitests/w32knapi/testlist.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/te= stlist.c?rev=3D32744&r1=3D32743&r2=3D32744&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/rostests/apitests/w32knapi/testlist.c (original) +++ trunk/rostests/apitests/w32knapi/testlist.c Fri Mar 21 22:12:01 2008 @@ -24,10 +24,19 @@ //#include "ntgdi/NtGdiSTROBJ_vEnumStart.c" #include "ntgdi/NtGdiGetDIBits.c" =
+#include "ntuser/NtUserCallHwnd.c" +#include "ntuser/NtUserCallHwndLock.c" +#include "ntuser/NtUserCallHwndOpt.c" +#include "ntuser/NtUserCallHwndParam.c" +#include "ntuser/NtUserCallHwndParamLock.c" +#include "ntuser/NtUserCallNoParam.c" +#include "ntuser/NtUserCallOneParam.c" #include "ntuser/NtUserCountClipboardFormats.c" +//#include "ntuser/NtUserCreateWindowEx.c" #include "ntuser/NtUserFindExistingCursorIcon.c" #include "ntuser/NtUserRedrawWindow.c" #include "ntuser/NtUserScrollDC.c" +#include "ntuser/NtUserSystemParametersInfo.c" #include "ntuser/NtUserToUnicodeEx.c" =
/* The List of tests */ @@ -58,10 +67,19 @@ { L"NtGdiGetDIBitsInternal", Test_NtGdiGetDIBitsInternal }, =
/* ntuser */ + { L"NtUserCallHwnd", Test_NtUserCallHwnd }, + { L"NtUserCallHwndLock", Test_NtUserCallHwndLock }, + { L"NtUserCallHwndOpt", Test_NtUserCallHwndOpt }, + { L"NtUserCallHwndParam", Test_NtUserCallHwndParam }, + { L"NtUserCallHwndParamLock", Test_NtUserCallHwndParamLock }, + { L"NtUserCallNoParam", Test_NtUserCallNoParam }, + { L"NtUserCallOneParam", Test_NtUserCallOneParam }, { L"NtUserCountClipboardFormats", Test_NtUserCountClipboardFormats }, +// { L"NtUserCreateWindowEx", Test_NtUserCreateWindowEx }, { L"NtUserFindExistingCursorIcon", Test_NtUserFindExistingCursoricon }, { L"NtUserRedrawWindow", Test_NtUserRedrawWindow }, { L"NtUserScrollDC", Test_NtUserScrollDC }, + { L"NtUserSystemParametersInfo", Test_NtUserSystemParametersInfo }, { L"NtUserToUnicodeEx", Test_NtUserToUnicodeEx } }; =
Modified: trunk/rostests/apitests/w32knapi/w32knapi.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/w3= 2knapi.c?rev=3D32744&r1=3D32743&r2=3D32744&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/rostests/apitests/w32knapi/w32knapi.c (original) +++ trunk/rostests/apitests/w32knapi/w32knapi.c Fri Mar 21 22:12:01 2008 @@ -74,6 +74,9 @@ /* Convert to gui thread */ // IsGUIThread(TRUE); <- does not exists on win2k =
+ InitOsVersion(); + printf("g_OsIdx =3D %d\n", g_OsIdx); + g_hModule =3D LoadLibraryW(L"w32kdll.dll"); if (!g_hModule) {
Modified: trunk/rostests/apitests/w32knapi/w32knapi.h URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/w3= 2knapi.h?rev=3D32744&r1=3D32743&r2=3D32744&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/rostests/apitests/w32knapi/w32knapi.h (original) +++ trunk/rostests/apitests/w32knapi/w32knapi.h Fri Mar 21 22:12:01 2008 @@ -38,5 +38,27 @@ =
DWORD Syscall(LPWSTR lpszFunction, int cParams, void* pParams); BOOL InitOsVersion(); +extern UINT g_OsIdx; + +typedef UINT ASPI[5]; +extern ASPI gNOPARAM_ROUTINE_CREATEMENU; +extern ASPI gNOPARAM_ROUTINE_CREATEMENUPOPUP; +extern ASPI gNOPARAM_ROUTINE_LOADUSERAPIHOOK; +extern ASPI gONEPARAM_ROUTINE_MAPDEKTOPOBJECT; +extern ASPI gONEPARAM_ROUTINE_SWAPMOUSEBUTTON; +extern ASPI gHWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW; +extern ASPI gHWND_ROUTINE_GETWNDCONTEXTHLPID; +extern ASPI gHWNDPARAM_ROUTINE_SETWNDCONTEXTHLPID; + +#define _NOPARAM_ROUTINE_CREATEMENU gNOPARAM_ROUTINE_CREATEMENU[g_OsIdx] +#define _NOPARAM_ROUTINE_CREATEMENUPOPUP gNOPARAM_ROUTINE_CREATEMENUPOPUP[= g_OsIdx] +#define _NOPARAM_ROUTINE_LOADUSERAPIHOOK gNOPARAM_ROUTINE_LOADUSERAPIHOOK[= g_OsIdx] +#define _ONEPARAM_ROUTINE_MAPDEKTOPOBJECT gONEPARAM_ROUTINE_MAPDEKTOPOBJEC= T[g_OsIdx] +#define _ONEPARAM_ROUTINE_SWAPMOUSEBUTTON gONEPARAM_ROUTINE_SWAPMOUSEBUTTO= N[g_OsIdx] +#define _HWND_ROUTINE_DEREGISTERSHELLHOOKWINDOW gHWND_ROUTINE_DEREGISTERSH= ELLHOOKWINDOW[g_OsIdx] +#define _HWND_ROUTINE_GETWNDCONTEXTHLPID gHWND_ROUTINE_GETWNDCONTEXTHLPID[= g_OsIdx] +#define _HWNDPARAM_ROUTINE_SETWNDCONTEXTHLPID gHWNDPARAM_ROUTINE_SETWNDCON= TEXTHLPID[g_OsIdx] + + =
#endif /* _W32KNAPI_H */
Modified: trunk/rostests/apitests/w32knapi/w32knapi.rbuild URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/w32knapi/w3= 2knapi.rbuild?rev=3D32744&r1=3D32743&r2=3D32744&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/rostests/apitests/w32knapi/w32knapi.rbuild (original) +++ trunk/rostests/apitests/w32knapi/w32knapi.rbuild Fri Mar 21 22:12:01 20= 08 @@ -8,8 +8,11 @@ <library>user32</library> <library>gdi32</library> <library>shell32</library> + <library>advapi32</library> <library>w32kdll</library> + <library>dbghelp</library> <file>w32knapi.c</file> + <file>osver.c</file> <file>testlist.c</file> <file>w32knapi.rc</file> </module>