+2003-09-26 Dimitri Papadopoulos <papadopo@users.sourceforge.net>
+
+ * include/winuser.h [WINVER >= 0x0500] (SetWinEventHook, WINEVENTPROC,
+ WINEVENT_OUTOFCONTEXT, WINEVENT_SKIPOWNTHREAD, WINEVENT_SKIPOWNPROCESS,
+ WINEVENT_INCONTEXT): Add function, typedef, and constants.
+
+ * include/winable.h [WINVER < 0x0500] (SetWinEventHook, WINEVENTPROC,
+ WINEVENT_OUTOFCONTEXT, WINEVENT_SKIPOWNTHREAD, WINEVENT_SKIPOWNPROCESS,
+ WINEVENT_INCONTEXT): Add function, typedef, and constants.
+
+ * include/winuser.h [_WIN32_WINNT >= 0x0500] (UserHandleGrantAccess):
+ Add function.
+
+ * lib/user32.def (SetWinEventHook, UserHandleGrantAccess):
+ Add functions.
+
2003-09-26 Dimitri Papadopoulos <papadopo@users.sourceforge.net>
* include/winnt.h (ACE_INHERITED_OBJECT_TYPE_PRESENT,
#define GUI_INMENUMODE 0x00000004
#define GUI_SYSTEMMENUMODE 0x00000008
#define GUI_POPUPMENUMODE 0x00000010
+#define WINEVENT_OUTOFCONTEXT 0x0000
+#define WINEVENT_SKIPOWNTHREAD 0x0001
+#define WINEVENT_SKIPOWNPROCESS 0x0002
+#define WINEVENT_INCONTEXT 0x0004
typedef struct tagGUITHREADINFO {
DWORD cbSize;
DWORD flags;
HWND hwndCaret;
RECT rcCaret;
} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
+typedef VOID (*WINEVENTPROC)(HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD);
BOOL WINAPI GetGUIThreadInfo(DWORD,LPGUITHREADINFO);
+HWINEVENTHOOK WINAPI SetWinEventHook(UINT,UINT,HMODULE,WINEVENTPROC,DWORD,DWORD,UINT);
#endif /* (WINVER < 0x0500) */
#ifdef __cplusplus
#ifdef __cplusplus
extern "C" {
#endif
+
#define WC_DIALOG MAKEINTATOM(0x8002)
#define FALT 16
#define FCONTROL 8
#if (_WIN32_WINNT >= 0x0501)
#define DC_BUTTONS 0x00001000
#endif
-/* Where are these documented? */
+/* Where are these documented? */
#define DC_CAPTION (DC_ICON|DC_TEXT|DC_BUTTONS)
#define DC_NC (DC_CAPTION|DC_FRAME)
/* This is supposed to be defined by the program using it not defined
in the w32api headers. I've left it here for documentation purposes.
*/
-#ifndef IDC_STATIC /* May be predefined by resource compiler. */
+#ifndef IDC_STATIC /* May be predefined by resource compiler. */
#define IDC_STATIC (-1)
#endif
#endif
#define SW_RESTORE 9
#define SW_SHOWDEFAULT 10
#define SW_FORCEMINIMIZE 11
-#define SW_MAX 11
+#define SW_MAX 11
#define MB_USERICON 128
#define MB_ICONASTERISK 64
#define MB_ICONEXCLAMATION 0x30
#define MB_RETRYCANCEL 5
#ifdef _WIN32_WINNT
#if (_WIN32_WINNT >= 0x0400)
-#define MB_SERVICE_NOTIFICATION 0x00200000
+#define MB_SERVICE_NOTIFICATION 0x00200000
#else
-#define MB_SERVICE_NOTIFICATION 0x00040000
+#define MB_SERVICE_NOTIFICATION 0x00040000
#endif
-#define MB_SERVICE_NOTIFICATION_NT3X 0x00040000
+#define MB_SERVICE_NOTIFICATION_NT3X 0x00040000
#endif
#define MB_SETFOREGROUND 0x10000
#define MB_SYSTEMMODAL 4096
#if (_WIN32_WINNT >= 0x0501)
#define GUI_16BITTASK 0x00000020
#endif
+#define WINEVENT_OUTOFCONTEXT 0x0000
+#define WINEVENT_SKIPOWNTHREAD 0x0001
+#define WINEVENT_SKIPOWNPROCESS 0x0002
+#define WINEVENT_INCONTEXT 0x0004
#define AW_HOR_POSITIVE 0x00000001
#define AW_HOR_NEGATIVE 0x00000002
#define AW_VER_POSITIVE 0x00000004
HWND hwndCaret;
RECT rcCaret;
} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
+typedef VOID (*WINEVENTPROC)(HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD);
#endif /* (WINVER >= 0x0500) */
#if (_WIN32_WINNT >= 0x0501)
typedef struct {
BOOL WINAPI SetUserObjectInformationA(HANDLE,int,PVOID,DWORD);
BOOL WINAPI SetUserObjectInformationW(HANDLE,int,PVOID,DWORD);
BOOL WINAPI SetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
+#if (WINVER >= 0x0500)
+HWINEVENTHOOK WINAPI SetWinEventHook(UINT,UINT,HMODULE,WINEVENTPROC,DWORD,DWORD,UINT);
+#endif
BOOL WINAPI SetWindowContextHelpId(HWND,DWORD);
LONG WINAPI SetWindowLongA(HWND,int,LONG);
LONG WINAPI SetWindowLongW(HWND,int,LONG);
BOOL WINAPI UnregisterClassW(LPCWSTR,HINSTANCE);
BOOL WINAPI UnregisterHotKey(HWND,int);
BOOL WINAPI UpdateWindow(HWND);
+#if (_WIN32_WINNT >= 0x0500)
+BOOL WINAPI UserHandleGrantAccess(HANDLE,HANDLE,BOOL);
+#endif
BOOL WINAPI ValidateRect(HWND,LPCRECT);
BOOL WINAPI ValidateRgn(HWND,HRGN);
SHORT WINAPI VkKeyScanA(CHAR);
int WINAPIV wsprintfW(LPWSTR,LPCWSTR,...);
int WINAPI wvsprintfA(LPSTR,LPCSTR,va_list arglist);
int WINAPI wvsprintfW(LPWSTR,LPCWSTR,va_list arglist);
-#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
+#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
BOOL WINAPI AllowSetForegroundWindow(DWORD);
BOOL WINAPI LockSetForegroundWindow(UINT);
#endif
#define GetMenuItemInfo GetMenuItemInfoW
#define GetMenuString GetMenuStringW
#define GetMessage GetMessageW
-#define GetMonitorInfo GetMonitorInfoW
+#define GetMonitorInfo GetMonitorInfoW
#define GetProp GetPropW
#define GetTabbedTextExtent GetTabbedTextExtentW
#define GetUserObjectInformation GetUserObjectInformationW
#define GetMenuItemInfo GetMenuItemInfoA
#define GetMenuString GetMenuStringA
#define GetMessage GetMessageA
-#define GetMonitorInfo GetMonitorInfoA
+#define GetMonitorInfo GetMonitorInfoA
#define GetProp GetPropA
#define GetTabbedTextExtent GetTabbedTextExtentA
#define GetUserObjectInformation GetUserObjectInformationA
#endif /* NOGDI */
#endif /* UNICODE */
#endif /* RC_INVOKED */
+
#ifdef __cplusplus
}
#endif