mirror of
https://github.com/reactos/reactos.git
synced 2025-07-26 02:03:46 +00:00
Patch by Stefan Ginsberg (stefan__100__ AT hotmail DOT com):
- remove NtUserEnumClipboardFormats, use ->ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMAT insetad - remove NtUserRegisterClipboardFormat, use NtUserRegisterWIndowsMessage instead - remove NtUserKillSystemTimer, use HWNDPARAM_ROUTINE_KILLSYSTEMTIMER instead - remove NtUserInsertMenuItem, use NtUserThunkedMenuItemInfo instead - remove NtUserGetCapture, use THREADSTATE_CAPTUREWINDOW instead - remove NtUserGetActiveWindow, use THREADSTATE_ACTIVEWINDOW instead - remove NtUserGetQueueStatus, use ONEPARAM_ROUTIME_GETQUEUESTATUS instead - remove NtUserGetLastActivePopup, wasn't implemented - remove NtUserRealizePalette from ntuser.h, it's not implemented - remove duplicate NtUserGetLastInputInfo from ntuser.h - remove PrivateCsrssRergisterPrimitive from user32, it was unused and unimplemented - remove NtUserDereferenceWndprocHandle, it was unused - move WNDPROC_INFO structure from ntuser.h to win32k/include/class.h, as it's not used in usermode anymore tested with AbiWord and FF on VMWare svn path=/trunk/; revision=32825
This commit is contained in:
parent
3df1bfcf2e
commit
1e51a48800
24 changed files with 83 additions and 258 deletions
|
@ -43,7 +43,7 @@ KillSystemTimer(
|
||||||
HWND hWnd,
|
HWND hWnd,
|
||||||
UINT_PTR IDEvent)
|
UINT_PTR IDEvent)
|
||||||
{
|
{
|
||||||
return NtUserKillSystemTimer(hWnd, IDEvent);
|
return NtUserCallHwndParam(hWnd, IDEvent, HWNDPARAM_ROUTINE_KILLSYSTEMTIMER);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -89,3 +89,6 @@ SetTimer(
|
||||||
return NtUserSetTimer(hWnd, IDEvent, Period, TimerFunc);
|
return NtUserSetTimer(hWnd, IDEvent, Period, TimerFunc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -521,7 +521,6 @@ PostQuitMessage@4
|
||||||
PostThreadMessageA@16
|
PostThreadMessageA@16
|
||||||
PostThreadMessageW@16
|
PostThreadMessageW@16
|
||||||
PrintWindow@12
|
PrintWindow@12
|
||||||
PrivateCsrssRegisterPrimitive@0
|
|
||||||
PrivateCsrssManualGuiCheck@4
|
PrivateCsrssManualGuiCheck@4
|
||||||
PrivateCsrssInitialized@0
|
PrivateCsrssInitialized@0
|
||||||
PrivateExtractIconExA@20
|
PrivateExtractIconExA@20
|
||||||
|
|
|
@ -69,7 +69,7 @@ EmptyClipboard(VOID)
|
||||||
UINT STDCALL
|
UINT STDCALL
|
||||||
EnumClipboardFormats(UINT format)
|
EnumClipboardFormats(UINT format)
|
||||||
{
|
{
|
||||||
UINT ret = NtUserEnumClipboardFormats(format);
|
UINT ret = NtUserCallOneParam(format, ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -248,7 +248,7 @@ RegisterClipboardFormatA(LPCSTR lpszFormat)
|
||||||
ret = RtlCreateUnicodeStringFromAsciiz(&usFormat, lpszFormat);
|
ret = RtlCreateUnicodeStringFromAsciiz(&usFormat, lpszFormat);
|
||||||
if (ret)
|
if (ret)
|
||||||
{
|
{
|
||||||
ret = NtUserRegisterClipboardFormat(&usFormat); //(LPCWSTR)
|
ret = NtUserRegisterWindowMessage(&usFormat); //(LPCWSTR)
|
||||||
RtlFreeUnicodeString(&usFormat);
|
RtlFreeUnicodeString(&usFormat);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -278,7 +278,7 @@ RegisterClipboardFormatW(LPCWSTR lpszFormat)
|
||||||
}
|
}
|
||||||
|
|
||||||
RtlInitUnicodeString(&usFormat, lpszFormat);
|
RtlInitUnicodeString(&usFormat, lpszFormat);
|
||||||
ret = NtUserRegisterClipboardFormat(&usFormat);
|
ret = NtUserRegisterWindowMessage(&usFormat);
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
|
@ -574,15 +574,6 @@ SendInput(
|
||||||
return NtUserSendInput(nInputs, pInputs, cbSize);
|
return NtUserSendInput(nInputs, pInputs, cbSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* Private call for CSRSS
|
|
||||||
*/
|
|
||||||
VOID
|
|
||||||
STDCALL
|
|
||||||
PrivateCsrssRegisterPrimitive(VOID)
|
|
||||||
{
|
|
||||||
NtUserCallNoParam(NOPARAM_ROUTINE_REGISTER_PRIMITIVE);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @implemented
|
* @implemented
|
||||||
|
|
|
@ -4458,7 +4458,7 @@ InsertMenuItemA(
|
||||||
mi.cch = MenuText.Length / sizeof(WCHAR);
|
mi.cch = MenuText.Length / sizeof(WCHAR);
|
||||||
CleanHeap = TRUE;
|
CleanHeap = TRUE;
|
||||||
}
|
}
|
||||||
res = NtUserInsertMenuItem(hMenu, uItem, fByPosition, &mi);
|
res = NtUserThunkedMenuItemInfo(hMenu, uItem, fByPosition, TRUE, &mi, NULL);
|
||||||
|
|
||||||
if ( CleanHeap ) RtlFreeUnicodeString ( &MenuText );
|
if ( CleanHeap ) RtlFreeUnicodeString ( &MenuText );
|
||||||
}
|
}
|
||||||
|
@ -4504,7 +4504,7 @@ InsertMenuItemW(
|
||||||
mi.dwTypeData = MenuText.Buffer;
|
mi.dwTypeData = MenuText.Buffer;
|
||||||
mi.cch = MenuText.Length / sizeof(WCHAR);
|
mi.cch = MenuText.Length / sizeof(WCHAR);
|
||||||
}
|
}
|
||||||
res = NtUserInsertMenuItem(hMenu, uItem, fByPosition, &mi);
|
res = NtUserThunkedMenuItemInfo(hMenu, uItem, fByPosition, TRUE, &mi, NULL);
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
@ -5173,3 +5173,6 @@ ChangeMenuA(
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2140,7 +2140,7 @@ SetCapture(HWND hWnd)
|
||||||
HWND STDCALL
|
HWND STDCALL
|
||||||
GetCapture(VOID)
|
GetCapture(VOID)
|
||||||
{
|
{
|
||||||
return(NtUserGetCapture());
|
return (HWND)NtUserGetThreadState(THREADSTATE_CAPTUREWINDOW);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -2171,7 +2171,7 @@ RealGetQueueStatus(UINT flags)
|
||||||
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, 0, 0 );
|
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, 0, 0 );
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
ret = NtUserGetQueueStatus(TRUE /*ClearChanges*/);
|
ret = NtUserCallOneParam(TRUE, ONEPARAM_ROUTINE_GETQUEUESTATUS);
|
||||||
|
|
||||||
changed_bits = LOWORD(ret);
|
changed_bits = LOWORD(ret);
|
||||||
wake_bits = HIWORD(ret);
|
wake_bits = HIWORD(ret);
|
||||||
|
@ -2195,7 +2195,7 @@ BOOL STDCALL GetInputState(VOID)
|
||||||
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, 0, 0 );
|
USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, 0, 0 );
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
ret = NtUserGetQueueStatus(FALSE /*ClearChanges*/);
|
ret = NtUserCallOneParam(FALSE, ONEPARAM_ROUTINE_GETQUEUESTATUS);
|
||||||
|
|
||||||
wake_bits = HIWORD(ret);
|
wake_bits = HIWORD(ret);
|
||||||
|
|
||||||
|
|
|
@ -919,7 +919,8 @@ GetGUIThreadInfo(DWORD idThread,
|
||||||
HWND STDCALL
|
HWND STDCALL
|
||||||
GetLastActivePopup(HWND hWnd)
|
GetLastActivePopup(HWND hWnd)
|
||||||
{
|
{
|
||||||
return NtUserGetLastActivePopup(hWnd);
|
UNIMPLEMENTED;
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1987,3 +1988,6 @@ DisableProcessWindowsGhosting(VOID)
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -99,7 +99,7 @@ WinPosGetMinMaxInfo(HWND hWnd, POINT* MaxSize, POINT* MaxPos,
|
||||||
HWND STDCALL
|
HWND STDCALL
|
||||||
GetActiveWindow(VOID)
|
GetActiveWindow(VOID)
|
||||||
{
|
{
|
||||||
return(NtUserGetActiveWindow());
|
return (HWND)NtUserGetThreadState(THREADSTATE_ACTIVEWINDOW);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -1424,11 +1424,18 @@ NtUserGetThreadDesktop(
|
||||||
DWORD dwThreadId,
|
DWORD dwThreadId,
|
||||||
DWORD Unknown1);
|
DWORD Unknown1);
|
||||||
|
|
||||||
#define THREADSTATE_GETTHREADINFO (0)
|
|
||||||
#define THREADSTATE_FOCUSWINDOW (1)
|
enum ThreadStateRoutines
|
||||||
#define THREADSTATE_INSENDMESSAGE (2)
|
{
|
||||||
#define THREADSTATE_PROGMANWINDOW (3)
|
THREADSTATE_GETTHREADINFO,
|
||||||
#define THREADSTATE_TASKMANWINDOW (4)
|
THREADSTATE_INSENDMESSAGE,
|
||||||
|
THREADSTATE_FOCUSWINDOW,
|
||||||
|
THREADSTATE_ACTIVEWINDOW,
|
||||||
|
THREADSTATE_CAPTUREWINDOW,
|
||||||
|
THREADSTATE_PROGMANWINDOW,
|
||||||
|
THREADSTATE_TASKMANWINDOW
|
||||||
|
};
|
||||||
|
|
||||||
DWORD
|
DWORD
|
||||||
NTAPI
|
NTAPI
|
||||||
NtUserGetThreadState(
|
NtUserGetThreadState(
|
||||||
|
@ -1773,10 +1780,6 @@ NtUserRealInternalGetMessage(
|
||||||
DWORD dwUnknown5,
|
DWORD dwUnknown5,
|
||||||
DWORD dwUnknown6);
|
DWORD dwUnknown6);
|
||||||
|
|
||||||
UINT
|
|
||||||
NTAPI
|
|
||||||
NtUserRealizePalette(HDC hDC);
|
|
||||||
|
|
||||||
DWORD
|
DWORD
|
||||||
NTAPI
|
NTAPI
|
||||||
NtUserRealChildWindowFromPoint(
|
NtUserRealChildWindowFromPoint(
|
||||||
|
@ -1831,11 +1834,6 @@ NtUserRegisterHotKey(HWND hWnd,
|
||||||
UINT fsModifiers,
|
UINT fsModifiers,
|
||||||
UINT vk);
|
UINT vk);
|
||||||
|
|
||||||
BOOL
|
|
||||||
NTAPI
|
|
||||||
NtUserGetLastInputInfo(
|
|
||||||
PLASTINPUTINFO plii);
|
|
||||||
|
|
||||||
DWORD
|
DWORD
|
||||||
NTAPI
|
NTAPI
|
||||||
NtUserRegisterTasklist(
|
NtUserRegisterTasklist(
|
||||||
|
@ -2475,7 +2473,6 @@ typedef struct tagKMDDELPARAM
|
||||||
* 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_GETMESSAGEEXTRAINFO 0xffff0005
|
||||||
#define NOPARAM_ROUTINE_ANYPOPUP 0xffff0006
|
#define NOPARAM_ROUTINE_ANYPOPUP 0xffff0006
|
||||||
#define NOPARAM_ROUTINE_CSRSS_INITIALIZED 0xffff0007
|
#define NOPARAM_ROUTINE_CSRSS_INITIALIZED 0xffff0007
|
||||||
|
@ -2533,30 +2530,6 @@ NtUserCreateCursorIconHandle(
|
||||||
BOOL Indirect);
|
BOOL Indirect);
|
||||||
|
|
||||||
|
|
||||||
typedef struct _WNDPROC_INFO
|
|
||||||
{
|
|
||||||
WNDPROC WindowProc;
|
|
||||||
BOOL IsUnicode;
|
|
||||||
} WNDPROC_INFO, *PWNDPROC_INFO;
|
|
||||||
|
|
||||||
BOOL
|
|
||||||
NTAPI
|
|
||||||
NtUserDereferenceWndProcHandle(IN HANDLE wpHandle, OUT PWNDPROC_INFO wpInfo);
|
|
||||||
|
|
||||||
/* Use ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS */
|
|
||||||
UINT
|
|
||||||
NTAPI
|
|
||||||
NtUserEnumClipboardFormats(
|
|
||||||
UINT format);
|
|
||||||
|
|
||||||
HWND
|
|
||||||
NTAPI
|
|
||||||
NtUserGetActiveWindow(VOID);
|
|
||||||
|
|
||||||
HWND
|
|
||||||
NTAPI
|
|
||||||
NtUserGetCapture(VOID);
|
|
||||||
|
|
||||||
/* Should be done in usermode */
|
/* Should be done in usermode */
|
||||||
ULONG_PTR
|
ULONG_PTR
|
||||||
NTAPI
|
NTAPI
|
||||||
|
@ -2579,10 +2552,6 @@ NtUserGetMenuDefaultItem(
|
||||||
UINT fByPos,
|
UINT fByPos,
|
||||||
UINT gmdiFlags);
|
UINT gmdiFlags);
|
||||||
|
|
||||||
HWND
|
|
||||||
NTAPI
|
|
||||||
NtUserGetLastActivePopup(HWND hWnd);
|
|
||||||
|
|
||||||
BOOL
|
BOOL
|
||||||
NTAPI
|
NTAPI
|
||||||
NtUserGetLastInputInfo(
|
NtUserGetLastInputInfo(
|
||||||
|
@ -2606,10 +2575,6 @@ HANDLE
|
||||||
NTAPI
|
NTAPI
|
||||||
NtUserGetProp(HWND hWnd, ATOM Atom);
|
NtUserGetProp(HWND hWnd, ATOM Atom);
|
||||||
|
|
||||||
DWORD
|
|
||||||
NTAPI
|
|
||||||
NtUserGetQueueStatus(BOOL ClearChanges);
|
|
||||||
|
|
||||||
BOOL
|
BOOL
|
||||||
NTAPI
|
NTAPI
|
||||||
NtUserGetScrollInfo(
|
NtUserGetScrollInfo(
|
||||||
|
@ -2643,17 +2608,7 @@ DWORD
|
||||||
NTAPI
|
NTAPI
|
||||||
NtUserGetWindowThreadProcessId(HWND hWnd, LPDWORD UnsafePid);
|
NtUserGetWindowThreadProcessId(HWND hWnd, LPDWORD UnsafePid);
|
||||||
|
|
||||||
DWORD
|
|
||||||
NTAPI
|
|
||||||
NtUserInsertMenuItem(
|
|
||||||
HMENU hMenu,
|
|
||||||
UINT uItem,
|
|
||||||
BOOL fByPosition,
|
|
||||||
LPCMENUITEMINFOW lpmii);
|
|
||||||
|
|
||||||
BOOL
|
|
||||||
NTAPI
|
|
||||||
NtUserKillSystemTimer(HWND hWnd, UINT_PTR uIDEvent);
|
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
NTAPI
|
NTAPI
|
||||||
|
@ -2762,11 +2717,6 @@ NtUserRegisterClassEx(
|
||||||
HMENU hMenu);
|
HMENU hMenu);
|
||||||
|
|
||||||
|
|
||||||
UINT
|
|
||||||
NTAPI
|
|
||||||
NtUserRegisterClipboardFormat(
|
|
||||||
PUNICODE_STRING format);
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct tagNTUSERSENDMESSAGEINFO
|
typedef struct tagNTUSERSENDMESSAGEINFO
|
||||||
{
|
{
|
||||||
|
|
|
@ -4,6 +4,12 @@
|
||||||
#define IS_ATOM(x) \
|
#define IS_ATOM(x) \
|
||||||
(((ULONG_PTR)(x) > 0x0) && ((ULONG_PTR)(x) < 0x10000))
|
(((ULONG_PTR)(x) > 0x0) && ((ULONG_PTR)(x) < 0x10000))
|
||||||
|
|
||||||
|
typedef struct _WNDPROC_INFO
|
||||||
|
{
|
||||||
|
WNDPROC WindowProc;
|
||||||
|
BOOL IsUnicode;
|
||||||
|
} WNDPROC_INFO, *PWNDPROC_INFO;
|
||||||
|
|
||||||
static BOOL __inline
|
static BOOL __inline
|
||||||
IsCallProcHandle(IN WNDPROC lpWndProc)
|
IsCallProcHandle(IN WNDPROC lpWndProc)
|
||||||
{
|
{
|
||||||
|
|
|
@ -43,6 +43,8 @@ typedef struct _CLIPBOARDSYSTEM
|
||||||
VOID FASTCALL
|
VOID FASTCALL
|
||||||
IntClipboardFreeWindow(PWINDOW_OBJECT window);
|
IntClipboardFreeWindow(PWINDOW_OBJECT window);
|
||||||
|
|
||||||
|
UINT STDCALL IntEnumClipboardFormats(UINT format);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
UINT FASTCALL
|
UINT FASTCALL
|
||||||
IntEnumClipboardFormats(UINT format);
|
IntEnumClipboardFormats(UINT format);
|
||||||
|
|
|
@ -14,6 +14,8 @@ IntGetFocusWindow();
|
||||||
*/
|
*/
|
||||||
HWND FASTCALL
|
HWND FASTCALL
|
||||||
IntGetThreadFocusWindow();
|
IntGetThreadFocusWindow();
|
||||||
|
HWND STDCALL IntGetCapture();
|
||||||
|
HWND FASTCALL UserGetActiveWindow();
|
||||||
|
|
||||||
BOOL FASTCALL
|
BOOL FASTCALL
|
||||||
co_IntMouseActivateWindow(PWINDOW_OBJECT Window);
|
co_IntMouseActivateWindow(PWINDOW_OBJECT Window);
|
||||||
|
|
|
@ -98,6 +98,8 @@ IntCheckMenuItem(PMENU_OBJECT MenuObject, UINT uIDCheckItem, UINT uCheck);
|
||||||
BOOL FASTCALL
|
BOOL FASTCALL
|
||||||
IntSetMenuItemRect(PMENU_OBJECT MenuObject, UINT Item, BOOL fByPos, RECT *rcRect);
|
IntSetMenuItemRect(PMENU_OBJECT MenuObject, UINT Item, BOOL fByPos, RECT *rcRect);
|
||||||
|
|
||||||
|
DWORD STDCALL UserInsertMenuItem(HMENU hMenu, UINT uItem, BOOL fByPosition, LPCMENUITEMINFOW lpmii);
|
||||||
|
|
||||||
BOOL FASTCALL
|
BOOL FASTCALL
|
||||||
IntCleanupMenus(struct _EPROCESS *Process, PW32PROCESS Win32Process);
|
IntCleanupMenus(struct _EPROCESS *Process, PW32PROCESS Win32Process);
|
||||||
|
|
||||||
|
|
|
@ -7,5 +7,6 @@
|
||||||
#define W32PF_CREATEDWINORDC (0x0004)
|
#define W32PF_CREATEDWINORDC (0x0004)
|
||||||
|
|
||||||
ULONG FASTCALL IntSystemParametersInfo(UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni);
|
ULONG FASTCALL IntSystemParametersInfo(UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni);
|
||||||
|
DWORD STDCALL IntGetQueueStatus(BOOL ClearChanges);
|
||||||
|
|
||||||
#endif /* __WIN32K_MISC_H */
|
#endif /* __WIN32K_MISC_H */
|
||||||
|
|
|
@ -130,31 +130,3 @@ UserGetCallProcInfo(IN HANDLE hCallProc,
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL NTAPI
|
|
||||||
NtUserDereferenceWndProcHandle(IN HANDLE wpHandle,
|
|
||||||
OUT PWNDPROC_INFO wpInfo)
|
|
||||||
{
|
|
||||||
BOOL Ret = FALSE;
|
|
||||||
|
|
||||||
UserEnterShared();
|
|
||||||
|
|
||||||
_SEH_TRY
|
|
||||||
{
|
|
||||||
ProbeForWrite(wpInfo,
|
|
||||||
sizeof(WNDPROC_INFO),
|
|
||||||
sizeof(ULONG));
|
|
||||||
|
|
||||||
Ret = UserGetCallProcInfo(wpHandle,
|
|
||||||
wpInfo);
|
|
||||||
}
|
|
||||||
_SEH_HANDLE
|
|
||||||
{
|
|
||||||
SetLastWin32Error(_SEH_GetExceptionCode());
|
|
||||||
}
|
|
||||||
_SEH_END;
|
|
||||||
|
|
||||||
UserLeave();
|
|
||||||
|
|
||||||
return Ret;
|
|
||||||
}
|
|
||||||
|
|
|
@ -746,48 +746,6 @@ NtUserGetClipboardFormatName(UINT format, PUNICODE_STRING FormatName,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
UINT STDCALL
|
|
||||||
NtUserRegisterClipboardFormat(PUNICODE_STRING FormatName)
|
|
||||||
{
|
|
||||||
UINT ret = 0;
|
|
||||||
UNICODE_STRING cFormatName = {0};
|
|
||||||
|
|
||||||
if (FormatName == NULL)
|
|
||||||
{
|
|
||||||
SetLastWin32Error(ERROR_INVALID_PARAMETER);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
UserEnterExclusive();
|
|
||||||
|
|
||||||
_SEH_TRY
|
|
||||||
{
|
|
||||||
cFormatName = ProbeForReadUnicodeString(FormatName);
|
|
||||||
|
|
||||||
if (cFormatName.Length > 0)
|
|
||||||
{
|
|
||||||
ret = (UINT)IntAddAtom(cFormatName.Buffer);
|
|
||||||
//RtlFreeUnicodeString(&cFormatName);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
SetLastWin32Error(ERROR_INVALID_NAME);
|
|
||||||
_SEH_LEAVE;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
_SEH_HANDLE
|
|
||||||
{
|
|
||||||
SetLastNtError(_SEH_GetExceptionCode());
|
|
||||||
}
|
|
||||||
_SEH_END;
|
|
||||||
|
|
||||||
UserLeave();
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
HWND STDCALL
|
HWND STDCALL
|
||||||
NtUserGetClipboardOwner(VOID)
|
NtUserGetClipboardOwner(VOID)
|
||||||
{
|
{
|
||||||
|
@ -1107,12 +1065,10 @@ NtUserSetClipboardViewer(HWND hWndNewViewer)
|
||||||
}
|
}
|
||||||
|
|
||||||
UINT STDCALL
|
UINT STDCALL
|
||||||
NtUserEnumClipboardFormats(UINT uFormat)
|
IntEnumClipboardFormats(UINT uFormat)
|
||||||
{
|
{
|
||||||
UINT ret = 0;
|
UINT ret = 0;
|
||||||
|
|
||||||
UserEnterShared();
|
|
||||||
|
|
||||||
if (intIsClipboardOpenByMe())
|
if (intIsClipboardOpenByMe())
|
||||||
{
|
{
|
||||||
if (uFormat == 0)
|
if (uFormat == 0)
|
||||||
|
@ -1162,8 +1118,6 @@ NtUserEnumClipboardFormats(UINT uFormat)
|
||||||
SetLastWin32Error(ERROR_CLIPBOARD_NOT_OPEN);
|
SetLastWin32Error(ERROR_CLIPBOARD_NOT_OPEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
UserLeave();
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -386,25 +386,6 @@ HWND FASTCALL UserGetActiveWindow()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* @implemented
|
|
||||||
*/
|
|
||||||
HWND STDCALL
|
|
||||||
NtUserGetActiveWindow(VOID)
|
|
||||||
{
|
|
||||||
DECLARE_RETURN(HWND);
|
|
||||||
|
|
||||||
DPRINT("Enter NtUserGetActiveWindow\n");
|
|
||||||
UserEnterShared();
|
|
||||||
|
|
||||||
RETURN( UserGetActiveWindow());
|
|
||||||
|
|
||||||
CLEANUP:
|
|
||||||
DPRINT("Leave NtUserGetActiveWindow, ret=%i\n",_ret_);
|
|
||||||
UserLeave();
|
|
||||||
END_CLEANUP;
|
|
||||||
}
|
|
||||||
|
|
||||||
HWND STDCALL
|
HWND STDCALL
|
||||||
NtUserSetActiveWindow(HWND hWnd)
|
NtUserSetActiveWindow(HWND hWnd)
|
||||||
{
|
{
|
||||||
|
@ -454,20 +435,18 @@ CLEANUP:
|
||||||
* @implemented
|
* @implemented
|
||||||
*/
|
*/
|
||||||
HWND STDCALL
|
HWND STDCALL
|
||||||
NtUserGetCapture(VOID)
|
IntGetCapture(VOID)
|
||||||
{
|
{
|
||||||
PUSER_MESSAGE_QUEUE ThreadQueue;
|
PUSER_MESSAGE_QUEUE ThreadQueue;
|
||||||
DECLARE_RETURN(HWND);
|
DECLARE_RETURN(HWND);
|
||||||
|
|
||||||
DPRINT("Enter NtUserGetCapture\n");
|
DPRINT("Enter IntGetCapture\n");
|
||||||
UserEnterShared();
|
|
||||||
|
|
||||||
ThreadQueue = (PUSER_MESSAGE_QUEUE)PsGetCurrentThreadWin32Thread()->MessageQueue;
|
ThreadQueue = (PUSER_MESSAGE_QUEUE)PsGetCurrentThreadWin32Thread()->MessageQueue;
|
||||||
RETURN( ThreadQueue ? ThreadQueue->CaptureWindow : 0);
|
RETURN( ThreadQueue ? ThreadQueue->CaptureWindow : 0);
|
||||||
|
|
||||||
CLEANUP:
|
CLEANUP:
|
||||||
DPRINT("Leave NtUserGetCapture, ret=%i\n",_ret_);
|
DPRINT("Leave IntGetCapture, ret=%i\n",_ret_);
|
||||||
UserLeave();
|
|
||||||
END_CLEANUP;
|
END_CLEANUP;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1613,7 +1613,7 @@ CLEANUP:
|
||||||
* @implemented
|
* @implemented
|
||||||
*/
|
*/
|
||||||
DWORD STDCALL
|
DWORD STDCALL
|
||||||
NtUserInsertMenuItem(
|
UserInsertMenuItem(
|
||||||
HMENU hMenu,
|
HMENU hMenu,
|
||||||
UINT uItem,
|
UINT uItem,
|
||||||
BOOL fByPosition,
|
BOOL fByPosition,
|
||||||
|
@ -1624,7 +1624,7 @@ NtUserInsertMenuItem(
|
||||||
ROSMENUITEMINFO ItemInfo;
|
ROSMENUITEMINFO ItemInfo;
|
||||||
DECLARE_RETURN(DWORD);
|
DECLARE_RETURN(DWORD);
|
||||||
|
|
||||||
DPRINT("Enter NtUserInsertMenuItem\n");
|
DPRINT("Enter UserInsertMenuItem\n");
|
||||||
UserEnterExclusive();
|
UserEnterExclusive();
|
||||||
|
|
||||||
if(!(Menu = UserGetMenuObject(hMenu)))
|
if(!(Menu = UserGetMenuObject(hMenu)))
|
||||||
|
@ -1662,7 +1662,7 @@ NtUserInsertMenuItem(
|
||||||
RETURN( FALSE);
|
RETURN( FALSE);
|
||||||
|
|
||||||
CLEANUP:
|
CLEANUP:
|
||||||
DPRINT("Leave NtUserInsertMenuItem, ret=%i\n",_ret_);
|
DPRINT("Leave UserInsertMenuItem, ret=%i\n",_ret_);
|
||||||
UserLeave();
|
UserLeave();
|
||||||
END_CLEANUP;
|
END_CLEANUP;
|
||||||
}
|
}
|
||||||
|
@ -2444,10 +2444,13 @@ NtUserThunkedMenuItemInfo(
|
||||||
LPMENUITEMINFOW lpmii,
|
LPMENUITEMINFOW lpmii,
|
||||||
PUNICODE_STRING lpszCaption)
|
PUNICODE_STRING lpszCaption)
|
||||||
{
|
{
|
||||||
UNIMPLEMENTED
|
|
||||||
/* lpszCaption may be NULL, check for it and call RtlInitUnicodeString()
|
/* lpszCaption may be NULL, check for it and call RtlInitUnicodeString()
|
||||||
if bInsert == TRUE call NtUserInsertMenuItem() else NtUserSetMenuItemInfo()
|
if bInsert == TRUE call NtUserInsertMenuItem() else NtUserSetMenuItemInfo() */
|
||||||
*/
|
|
||||||
|
if (bInsert) return UserInsertMenuItem(hMenu, uItem, fByPosition, lpmii);
|
||||||
|
|
||||||
|
UNIMPLEMENTED
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1797,14 +1797,13 @@ CLEANUP:
|
||||||
}
|
}
|
||||||
|
|
||||||
DWORD STDCALL
|
DWORD STDCALL
|
||||||
NtUserGetQueueStatus(BOOL ClearChanges)
|
IntGetQueueStatus(BOOL ClearChanges)
|
||||||
{
|
{
|
||||||
PUSER_MESSAGE_QUEUE Queue;
|
PUSER_MESSAGE_QUEUE Queue;
|
||||||
DWORD Result;
|
DWORD Result;
|
||||||
DECLARE_RETURN(DWORD);
|
DECLARE_RETURN(DWORD);
|
||||||
|
|
||||||
DPRINT("Enter NtUserGetQueueStatus\n");
|
DPRINT("Enter IntGetQueueStatus\n");
|
||||||
UserEnterExclusive();
|
|
||||||
|
|
||||||
Queue = PsGetCurrentThreadWin32Thread()->MessageQueue;
|
Queue = PsGetCurrentThreadWin32Thread()->MessageQueue;
|
||||||
|
|
||||||
|
@ -1817,8 +1816,7 @@ NtUserGetQueueStatus(BOOL ClearChanges)
|
||||||
RETURN(Result);
|
RETURN(Result);
|
||||||
|
|
||||||
CLEANUP:
|
CLEANUP:
|
||||||
DPRINT("Leave NtUserGetQueueStatus, ret=%i\n",_ret_);
|
DPRINT("Leave IntGetQueueStatus, ret=%i\n",_ret_);
|
||||||
UserLeave();
|
|
||||||
END_CLEANUP;
|
END_CLEANUP;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -41,10 +41,15 @@ NtUserGetThreadState(
|
||||||
|
|
||||||
case THREADSTATE_FOCUSWINDOW:
|
case THREADSTATE_FOCUSWINDOW:
|
||||||
RETURN( (DWORD)IntGetThreadFocusWindow());
|
RETURN( (DWORD)IntGetThreadFocusWindow());
|
||||||
|
case THREADSTATE_CAPTUREWINDOW:
|
||||||
|
/* FIXME should use UserEnterShared */
|
||||||
|
RETURN( (DWORD)IntGetCapture());
|
||||||
case THREADSTATE_PROGMANWINDOW:
|
case THREADSTATE_PROGMANWINDOW:
|
||||||
RETURN( (DWORD)GetW32ThreadInfo()->Desktop->hProgmanWindow);
|
RETURN( (DWORD)GetW32ThreadInfo()->Desktop->hProgmanWindow);
|
||||||
case THREADSTATE_TASKMANWINDOW:
|
case THREADSTATE_TASKMANWINDOW:
|
||||||
RETURN( (DWORD)GetW32ThreadInfo()->Desktop->hTaskManWindow);
|
RETURN( (DWORD)GetW32ThreadInfo()->Desktop->hTaskManWindow);
|
||||||
|
case THREADSTATE_ACTIVEWINDOW:
|
||||||
|
RETURN ( (DWORD)UserGetActiveWindow());
|
||||||
}
|
}
|
||||||
RETURN( 0);
|
RETURN( 0);
|
||||||
|
|
||||||
|
|
|
@ -245,10 +245,7 @@ NtUserCallOneParam(
|
||||||
|
|
||||||
case ONEPARAM_ROUTINE_SETCARETBLINKTIME:
|
case ONEPARAM_ROUTINE_SETCARETBLINKTIME:
|
||||||
RETURN( (DWORD)IntSetCaretBlinkTime((UINT)Param));
|
RETURN( (DWORD)IntSetCaretBlinkTime((UINT)Param));
|
||||||
/*
|
|
||||||
case ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS:
|
|
||||||
RETURN( (DWORD)NtUserEnumClipboardFormats((UINT)Param));
|
|
||||||
*/
|
|
||||||
case ONEPARAM_ROUTINE_GETWINDOWINSTANCE:
|
case ONEPARAM_ROUTINE_GETWINDOWINSTANCE:
|
||||||
{
|
{
|
||||||
PWINDOW_OBJECT Window;
|
PWINDOW_OBJECT Window;
|
||||||
|
@ -391,6 +388,13 @@ NtUserCallOneParam(
|
||||||
|
|
||||||
case ONEPARAM_ROUTINE_REALIZEPALETTE:
|
case ONEPARAM_ROUTINE_REALIZEPALETTE:
|
||||||
RETURN (UserRealizePalette((HDC) Param));
|
RETURN (UserRealizePalette((HDC) Param));
|
||||||
|
|
||||||
|
case ONEPARAM_ROUTINE_GETQUEUESTATUS:
|
||||||
|
RETURN (IntGetQueueStatus((BOOL) Param));
|
||||||
|
|
||||||
|
case ONEPARAM_ROUTINE_ENUMCLIPBOARDFORMATS:
|
||||||
|
/* FIXME: Should use UserEnterShared */
|
||||||
|
RETURN(IntEnumClipboardFormats(Param));
|
||||||
}
|
}
|
||||||
DPRINT1("Calling invalid routine number 0x%x in NtUserCallOneParam(), Param=0x%x\n",
|
DPRINT1("Calling invalid routine number 0x%x in NtUserCallOneParam(), Param=0x%x\n",
|
||||||
Routine, Param);
|
Routine, Param);
|
||||||
|
@ -870,6 +874,13 @@ NtUserCallHwndParam(
|
||||||
DWORD Param,
|
DWORD Param,
|
||||||
DWORD Routine)
|
DWORD Routine)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
switch (Routine)
|
||||||
|
{
|
||||||
|
case HWNDPARAM_ROUTINE_KILLSYSTEMTIMER:
|
||||||
|
return IntKillTimer(hWnd, (UINT_PTR)Param, TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
UNIMPLEMENTED;
|
UNIMPLEMENTED;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -268,24 +268,4 @@ CLEANUP:
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
BOOL
|
|
||||||
STDCALL
|
|
||||||
NtUserKillSystemTimer(
|
|
||||||
HWND hWnd,
|
|
||||||
UINT_PTR uIDEvent
|
|
||||||
)
|
|
||||||
{
|
|
||||||
DECLARE_RETURN(BOOL);
|
|
||||||
|
|
||||||
DPRINT("Enter NtUserKillSystemTimer\n");
|
|
||||||
UserEnterExclusive();
|
|
||||||
|
|
||||||
RETURN(IntKillTimer(hWnd, uIDEvent, TRUE));
|
|
||||||
|
|
||||||
CLEANUP:
|
|
||||||
DPRINT("Leave NtUserKillSystemTimer, ret=%i\n", _ret_);
|
|
||||||
UserLeave();
|
|
||||||
END_CLEANUP;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -2979,37 +2979,6 @@ NtUserGetInternalWindowPos(DWORD Unknown0,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* @unimplemented
|
|
||||||
*/
|
|
||||||
HWND STDCALL
|
|
||||||
NtUserGetLastActivePopup(HWND hWnd)
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* This code can't work, because hWndLastPopup member of WINDOW_OBJECT is
|
|
||||||
* not changed anywhere.
|
|
||||||
* -- Filip, 01/nov/2003
|
|
||||||
*/
|
|
||||||
#if 0
|
|
||||||
PWINDOW_OBJECT Wnd;
|
|
||||||
HWND hWndLastPopup;
|
|
||||||
|
|
||||||
if (!(Wnd = UserGetWindowObject(hWnd)))
|
|
||||||
{
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
hWndLastPopup = Wnd->hWndLastPopup;
|
|
||||||
|
|
||||||
return hWndLastPopup;
|
|
||||||
#else
|
|
||||||
|
|
||||||
return NULL;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
DWORD
|
DWORD
|
||||||
STDCALL
|
STDCALL
|
||||||
NtUserGetListBoxInfo(
|
NtUserGetListBoxInfo(
|
||||||
|
|
|
@ -681,20 +681,14 @@ NtGdiSetWindowExtEx 4
|
||||||
NtGdiSetWindowOrgEx 4
|
NtGdiSetWindowOrgEx 4
|
||||||
NtUserBuildMenuItemList 4
|
NtUserBuildMenuItemList 4
|
||||||
NtUserCreateCursorIconHandle 2
|
NtUserCreateCursorIconHandle 2
|
||||||
NtUserDereferenceWndProcHandle 2
|
|
||||||
NtUserEnumClipboardFormats 1
|
|
||||||
NtUserGetActiveWindow 0
|
|
||||||
NtUserGetCapture 0
|
|
||||||
NtUserGetClassLong 3
|
NtUserGetClassLong 3
|
||||||
NtUserGetClientOrigin 2
|
NtUserGetClientOrigin 2
|
||||||
NtUserGetClientRect 2
|
NtUserGetClientRect 2
|
||||||
NtUserGetMenuDefaultItem 3
|
NtUserGetMenuDefaultItem 3
|
||||||
NtUserGetLastActivePopup 1
|
|
||||||
NtUserGetLastInputInfo 1
|
NtUserGetLastInputInfo 1
|
||||||
NtUserGetMinMaxInfo 3
|
NtUserGetMinMaxInfo 3
|
||||||
NtUserGetMonitorInfo 2
|
NtUserGetMonitorInfo 2
|
||||||
NtUserGetProp 2
|
NtUserGetProp 2
|
||||||
NtUserGetQueueStatus 1
|
|
||||||
NtUserGetScrollInfo 3
|
NtUserGetScrollInfo 3
|
||||||
NtUserGetShellWindow 0
|
NtUserGetShellWindow 0
|
||||||
NtUserGetSystemMetrics 1
|
NtUserGetSystemMetrics 1
|
||||||
|
@ -702,8 +696,6 @@ NtUserGetWindow 2
|
||||||
NtUserGetWindowLong 3
|
NtUserGetWindowLong 3
|
||||||
NtUserGetWindowRect 2
|
NtUserGetWindowRect 2
|
||||||
NtUserGetWindowThreadProcessId 2
|
NtUserGetWindowThreadProcessId 2
|
||||||
NtUserInsertMenuItem 4
|
|
||||||
NtUserKillSystemTimer 2
|
|
||||||
NtUserManualGuiCheck 1
|
NtUserManualGuiCheck 1
|
||||||
NtUserMenuInfo 3
|
NtUserMenuInfo 3
|
||||||
NtUserMenuItemInfo 5
|
NtUserMenuItemInfo 5
|
||||||
|
@ -711,7 +703,6 @@ NtUserMonitorFromPoint 3
|
||||||
NtUserMonitorFromRect 2
|
NtUserMonitorFromRect 2
|
||||||
NtUserMonitorFromWindow 2
|
NtUserMonitorFromWindow 2
|
||||||
NtUserRegisterClassEx 6
|
NtUserRegisterClassEx 6
|
||||||
NtUserRegisterClipboardFormat 1
|
|
||||||
NtUserSendMessage 5
|
NtUserSendMessage 5
|
||||||
NtUserSendMessageTimeout 8
|
NtUserSendMessageTimeout 8
|
||||||
NtUserSendNotifyMessage 4
|
NtUserSendNotifyMessage 4
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue