3 Test_OneParamRoutine_BeginDeferWindowPos(PTESTINFO pti
) /* 0x1e */
7 hWinPosInfo
= (HDWP
)NtUserCallOneParam(5, 0x1e);
8 TEST(hWinPosInfo
!= 0);
9 TEST(EndDeferWindowPos(hWinPosInfo
) != 0);
11 return APISTATUS_NORMAL
;
15 Test_OneParamRoutine_WindowFromDC(PTESTINFO pti
) /* 0x1f */
17 HDC hDC
= GetDC(NULL
);
20 hWnd
= (HWND
)NtUserCallOneParam((DWORD
)hDC
, 0x1f);
23 TEST(hWnd
== GetDesktopWindow());
25 return APISTATUS_NORMAL
;
29 Test_OneParamRoutine_CreateEmptyCurObject(PTESTINFO pti
) /* XP/2k3 : 0x21, vista 0x25 */
34 hIcon
= (HICON
) NtUserCallOneParam(0, _ONEPARAM_ROUTINE_CREATEEMPTYCUROBJECT
);
37 TEST(NtUserDestroyCursor(hIcon
, 0) == TRUE
);
40 hIcon
= (HICON
) NtUserCallOneParam(0xdeadbeef, _ONEPARAM_ROUTINE_CREATEEMPTYCUROBJECT
);
43 TEST(NtUserDestroyCursor(hIcon
, 0xbaadf00d) == TRUE
);
45 return APISTATUS_NORMAL
;
49 Test_OneParamRoutine_MapDesktopObject(PTESTINFO pti
) /* 0x30 */
55 hWnd
= GetDesktopWindow();
56 pObject
= NtUserCallOneParam((DWORD
)hWnd
, _ONEPARAM_ROUTINE_MAPDEKTOPOBJECT
);
58 TEST(pObject
< 0x80000000);
61 pObject
= NtUserCallOneParam((DWORD
)hMenu
, _ONEPARAM_ROUTINE_MAPDEKTOPOBJECT
);
64 TEST(pObject
< 0x80000000);
66 return APISTATUS_NORMAL
;
70 Test_OneParamRoutine_SwapMouseButtons(PTESTINFO pti
) /* 0x42 */
74 NtUserCallOneParam(TRUE
, _ONEPARAM_ROUTINE_SWAPMOUSEBUTTON
);
75 bInverse
= (BOOL
)NtUserCallOneParam(FALSE
, _ONEPARAM_ROUTINE_SWAPMOUSEBUTTON
);
76 TEST(bInverse
== TRUE
);
77 bInverse
= (BOOL
)NtUserCallOneParam(FALSE
, _ONEPARAM_ROUTINE_SWAPMOUSEBUTTON
);
78 TEST(bInverse
== FALSE
);
80 // TODO: test other values
81 return APISTATUS_NORMAL
;
85 Test_NtUserCallOneParam(PTESTINFO pti
)
87 Test_OneParamRoutine_BeginDeferWindowPos(pti
); /* 0x1e */
88 Test_OneParamRoutine_WindowFromDC(pti
); /* 0x1f */
89 Test_OneParamRoutine_CreateEmptyCurObject(pti
); /* XP/2k3 : 0x21, vista 0x25 */
90 Test_OneParamRoutine_MapDesktopObject(pti
); /* 0x30 */
92 Test_OneParamRoutine_SwapMouseButtons(pti
); /* 0x42 */
94 return APISTATUS_NORMAL
;