2010-02-26 11:43:19 +00:00
|
|
|
#pragma once
|
2001-06-12 17:51:51 +00:00
|
|
|
|
|
|
|
#define IS_ATOM(x) \
|
|
|
|
(((ULONG_PTR)(x) > 0x0) && ((ULONG_PTR)(x) < 0x10000))
|
|
|
|
|
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
2008-04-03 02:13:34 +00:00
|
|
|
typedef struct _WNDPROC_INFO
|
|
|
|
{
|
|
|
|
WNDPROC WindowProc;
|
|
|
|
BOOL IsUnicode;
|
|
|
|
} WNDPROC_INFO, *PWNDPROC_INFO;
|
|
|
|
|
2008-12-03 17:36:23 +00:00
|
|
|
static __inline BOOL
|
2006-05-09 20:21:52 +00:00
|
|
|
IsCallProcHandle(IN WNDPROC lpWndProc)
|
|
|
|
{
|
2011-12-14 04:07:06 +00:00
|
|
|
/* FIXME: Check for 64-bit architectures... */
|
2006-05-09 20:21:52 +00:00
|
|
|
return ((ULONG_PTR)lpWndProc & 0xFFFF0000) == 0xFFFF0000;
|
|
|
|
}
|
|
|
|
|
2014-09-21 17:44:40 +00:00
|
|
|
BOOLEAN
|
|
|
|
DestroyCallProc(_Inout_ PVOID Object);
|
2006-04-05 08:05:55 +00:00
|
|
|
|
2009-07-25 00:41:22 +00:00
|
|
|
PCALLPROCDATA
|
2010-01-15 13:47:25 +00:00
|
|
|
CreateCallProc(IN PDESKTOP Desktop,
|
2006-04-05 08:05:55 +00:00
|
|
|
IN WNDPROC WndProc,
|
|
|
|
IN BOOL Unicode,
|
2009-03-30 05:45:08 +00:00
|
|
|
IN PPROCESSINFO pi);
|
2001-06-12 17:51:51 +00:00
|
|
|
|
2006-04-05 08:05:55 +00:00
|
|
|
BOOL
|
|
|
|
UserGetCallProcInfo(IN HANDLE hCallProc,
|
|
|
|
OUT PWNDPROC_INFO wpInfo);
|
|
|
|
|
|
|
|
void FASTCALL
|
2009-07-26 16:17:50 +00:00
|
|
|
DestroyProcessClasses(PPROCESSINFO Process );
|
2004-02-24 13:27:03 +00:00
|
|
|
|
2006-04-05 08:05:55 +00:00
|
|
|
VOID
|
2009-07-22 05:23:08 +00:00
|
|
|
IntDereferenceClass(IN OUT PCLS Class,
|
2008-10-17 10:40:04 +00:00
|
|
|
IN PDESKTOPINFO Desktop,
|
2009-03-30 05:45:08 +00:00
|
|
|
IN PPROCESSINFO pi);
|
2005-09-24 02:50:02 +00:00
|
|
|
|
2010-05-31 17:58:05 +00:00
|
|
|
PCLS
|
2012-10-28 10:34:41 +00:00
|
|
|
IntGetAndReferenceClass(PUNICODE_STRING ClassName, HINSTANCE hInstance, BOOL bDesktopThread);
|
2010-05-31 17:58:05 +00:00
|
|
|
|
2009-09-07 04:55:00 +00:00
|
|
|
BOOL FASTCALL UserRegisterSystemClasses(VOID);
|
2007-11-16 07:12:59 +00:00
|
|
|
|
2007-10-30 01:24:47 +00:00
|
|
|
VOID
|
2009-07-22 05:23:08 +00:00
|
|
|
UserAddCallProcToClass(IN OUT PCLS Class,
|
2009-07-25 00:41:22 +00:00
|
|
|
IN PCALLPROCDATA CallProc);
|
2007-10-30 01:24:47 +00:00
|
|
|
|
2015-03-10 00:12:41 +00:00
|
|
|
_Success_(return)
|
2006-05-20 22:09:42 +00:00
|
|
|
BOOL
|
2012-08-01 23:52:43 +00:00
|
|
|
NTAPI
|
|
|
|
IntGetAtomFromStringOrAtom(
|
|
|
|
_In_ PUNICODE_STRING ClassName,
|
|
|
|
_Out_ RTL_ATOM *Atom);
|
2006-05-20 22:09:42 +00:00
|
|
|
|
2006-04-15 10:41:58 +00:00
|
|
|
BOOL
|
2008-10-19 01:06:30 +00:00
|
|
|
IntCheckProcessDesktopClasses(IN PDESKTOP Desktop,
|
2006-04-15 10:41:58 +00:00
|
|
|
IN BOOL FreeOnFailure);
|
|
|
|
|
2009-09-07 04:55:00 +00:00
|
|
|
ULONG_PTR FASTCALL UserGetCPD(PVOID,GETCPD,ULONG_PTR);
|
|
|
|
|
2012-11-04 12:56:44 +00:00
|
|
|
_Must_inspect_result_
|
|
|
|
NTSTATUS
|
|
|
|
NTAPI
|
|
|
|
ProbeAndCaptureUnicodeStringOrAtom(
|
2012-12-18 21:44:58 +00:00
|
|
|
_Out_ _When_(return>=0, _At_(pustrOut->Buffer, _Post_ _Notnull_)) PUNICODE_STRING pustrOut,
|
2012-11-04 12:56:44 +00:00
|
|
|
__in_data_source(USER_MODE) _In_ PUNICODE_STRING pustrUnsafe);
|
|
|
|
|
2003-08-08 02:57:54 +00:00
|
|
|
/* EOF */
|