WCHAR Name[1];\r
} KEY_BASIC_INFORMATION, *PKEY_BASIC_INFORMATION;\r
\r
-#else\r
-\r
-typedef struct _REG_DELETE_KEY_INFORMATION\r
-{\r
- PVOID Object;\r
-} REG_DELETE_KEY_INFORMATION, *PREG_DELETE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_SET_VALUE_KEY_INFORMATION\r
-{\r
- PVOID Object;\r
- PUNICODE_STRING ValueName;\r
- ULONG TitleIndex;\r
- ULONG Type;\r
- PVOID Data;\r
- ULONG DataSize;\r
-} REG_SET_VALUE_KEY_INFORMATION, *PREG_SET_VALUE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_DELETE_VALUE_KEY_INFORMATION \r
-{\r
- PVOID Object;\r
- PUNICODE_STRING ValueName;\r
-} REG_DELETE_VALUE_KEY_INFORMATION, *PREG_DELETE_VALUE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_SET_INFORMATION_KEY_INFORMATION\r
-{\r
- PVOID Object;\r
- KEY_SET_INFORMATION_CLASS KeySetInformationClass;\r
- PVOID KeySetInformation;\r
- ULONG KeySetInformationLength;\r
-} REG_SET_INFORMATION_KEY_INFORMATION, *PREG_SET_INFORMATION_KEY_INFORMATION;\r
-\r
-typedef struct _REG_ENUMERATE_KEY_INFORMATION\r
-{\r
- PVOID Object;\r
- ULONG Index;\r
- KEY_INFORMATION_CLASS KeyInformationClass;\r
- PVOID KeyInformation;\r
- ULONG Length;\r
- PULONG ResultLength;\r
-} REG_ENUMERATE_KEY_INFORMATION, *PREG_ENUMERATE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_ENUMERATE_VALUE_KEY_INFORMATION \r
-{\r
- PVOID Object;\r
- ULONG Index;\r
- KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass;\r
- PVOID KeyValueInformation;\r
- ULONG Length;\r
- PULONG ResultLength;\r
-} REG_ENUMERATE_VALUE_KEY_INFORMATION, *PREG_ENUMERATE_VALUE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_QUERY_KEY_INFORMATION\r
-{\r
- PVOID Object;\r
- KEY_INFORMATION_CLASS KeyInformationClass;\r
- PVOID KeyInformation;\r
- ULONG Length;\r
- PULONG ResultLength;\r
-} REG_QUERY_KEY_INFORMATION, *PREG_QUERY_KEY_INFORMATION;\r
-\r
-typedef struct _REG_QUERY_VALUE_KEY_INFORMATION \r
-{\r
- PVOID Object;\r
- PUNICODE_STRING ValueName;\r
- KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass;\r
- PVOID KeyValueInformation;\r
- ULONG Length;\r
- PULONG ResultLength;\r
-} REG_QUERY_VALUE_KEY_INFORMATION, *PREG_QUERY_VALUE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION\r
-{\r
- PVOID Object;\r
- PKEY_VALUE_ENTRY ValueEntries;\r
- ULONG EntryCount;\r
- PVOID ValueBuffer;\r
- PULONG BufferLength;\r
- PULONG RequiredBufferLength;\r
-} REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION, *PREG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_PRE_CREATE_KEY_INFORMATION \r
-{\r
- PUNICODE_STRING CompleteName;\r
-} REG_PRE_CREATE_KEY_INFORMATION, *PREG_PRE_CREATE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_POST_CREATE_KEY_INFORMATION \r
-{\r
- PUNICODE_STRING CompleteName;\r
- PVOID Object;\r
- NTSTATUS Status;\r
-} REG_POST_CREATE_KEY_INFORMATION, *PREG_POST_CREATE_KEY_INFORMATION;\r
-\r
-typedef struct _REG_PRE_OPEN_KEY_INFORMATION \r
-{\r
- PUNICODE_STRING CompleteName;\r
-} REG_PRE_OPEN_KEY_INFORMATION, *PREG_PRE_OPEN_KEY_INFORMATION;\r
-\r
-typedef struct _REG_POST_OPEN_KEY_INFORMATION \r
-{\r
- PUNICODE_STRING CompleteName;\r
- PVOID Object;\r
- NTSTATUS Status;\r
-} REG_POST_OPEN_KEY_INFORMATION, *PREG_POST_OPEN_KEY_INFORMATION;\r
-\r
-typedef struct _REG_POST_OPERATION_INFORMATION \r
-{\r
- PVOID Object;\r
- NTSTATUS Status;\r
-} REG_POST_OPERATION_INFORMATION,*PREG_POST_OPERATION_INFORMATION;\r
-\r
#endif\r
\r
typedef struct _PLUGPLAY_EVENT_BLOCK\r
/* FUNCTION TYPES ************************************************************/
#ifndef NTOS_MODE_USER
typedef VOID (NTAPI *WAITORTIMERCALLBACKFUNC)(PVOID, BOOLEAN);
+
+#else
+
+typedef EXCEPTION_DISPOSITION
+(NTAPI *PEXCEPTION_ROUTINE)(
+ IN struct _EXCEPTION_RECORD *ExceptionRecord,
+ IN PVOID EstablisherFrame,
+ IN OUT struct _CONTEXT *ContextRecord,
+ IN OUT PVOID DispatcherContext
+);
+
#endif
struct _RTL_AVL_TABLE;
IN PVOID UserParam
);
-typedef EXCEPTION_DISPOSITION
-(NTAPI *PEXCEPTION_ROUTINE)(
- IN struct _EXCEPTION_RECORD *ExceptionRecord,
- IN PVOID EstablisherFrame,
- IN OUT struct _CONTEXT *ContextRecord,
- IN OUT PVOID DispatcherContext
-);
-
typedef LONG (NTAPI *PVECTORED_EXCEPTION_HANDLER)(
PEXCEPTION_POINTERS ExceptionPointers
);
typedef OSVERSIONINFOEXW RTL_OSVERSIONINFOEXW;
typedef LPOSVERSIONINFOEXW PRTL_OSVERSIONINFOEXW;
-typedef EXCEPTION_DISPOSITION
-(*PEXCEPTION_HANDLER)(
- struct _EXCEPTION_RECORD*,
- PVOID,
- struct _CONTEXT*,
- PVOID
-);
-
typedef struct _RTL_HEAP_PARAMETERS
{
ULONG Length;
} TIME_FIELDS, *PTIME_FIELDS;
#endif
+typedef EXCEPTION_DISPOSITION
+(*PEXCEPTION_HANDLER)(
+ struct _EXCEPTION_RECORD*,
+ PVOID,
+ struct _CONTEXT*,
+ PVOID
+);
+
typedef struct _ACE
{
ACE_HEADER Header;
#ifndef __INTERNAL_DEBUG
#define __INTERNAL_DEBUG
-#define UNIMPLEMENTED DbgPrint("WARNING: %s at %s:%d is UNIMPLEMENTED!\n",__FUNCTION__,__FILE__,__LINE__);
-
/* FIXME: should probably remove this later */
#if !defined(CHECKED) && !defined(NDEBUG)
#define CHECKED
#define CHECKPOINT do { DbgPrint("%s:%d\n",__FILE__,__LINE__); } while(0);
#else
- #if defined (__STDC__)
- #define DPRINT(...) do { if(0) { DbgPrint(__VA_ARGS__); } } while(0)
- #endif
+ #define DPRINT(...) do { if(0) { DbgPrint(__VA_ARGS__); } } while(0)
#define CHECKPOINT
#endif
+ #define UNIMPLEMENTED \
+ DbgPrint("WARNING: %s at %s:%d is UNIMPLEMENTED!\n",__FUNCTION__,__FILE__,__LINE__);
+
#else
/* On non-debug builds, we never show these */
- #if defined (__STDC__)
#define DPRINT1(...) do { if(0) { DbgPrint(__VA_ARGS__); } } while(0)
#define DPRINT(...) do { if(0) { DbgPrint(__VA_ARGS__); } } while(0)
- #endif
#define CHECKPOINT1
#define CHECKPOINT
+ #define UNIMPLEMENTED
#endif
/*
IN REG_NOTIFY_CLASS Argument1,
IN PVOID Argument2);
+typedef struct _REG_DELETE_KEY_INFORMATION
+{
+ PVOID Object;
+} REG_DELETE_KEY_INFORMATION, *PREG_DELETE_KEY_INFORMATION;
+
+typedef struct _REG_SET_VALUE_KEY_INFORMATION
+{
+ PVOID Object;
+ PUNICODE_STRING ValueName;
+ ULONG TitleIndex;
+ ULONG Type;
+ PVOID Data;
+ ULONG DataSize;
+} REG_SET_VALUE_KEY_INFORMATION, *PREG_SET_VALUE_KEY_INFORMATION;
+
+typedef struct _REG_DELETE_VALUE_KEY_INFORMATION
+{
+ PVOID Object;
+ PUNICODE_STRING ValueName;
+} REG_DELETE_VALUE_KEY_INFORMATION, *PREG_DELETE_VALUE_KEY_INFORMATION;
+
+typedef struct _REG_SET_INFORMATION_KEY_INFORMATION
+{
+ PVOID Object;
+ KEY_SET_INFORMATION_CLASS KeySetInformationClass;
+ PVOID KeySetInformation;
+ ULONG KeySetInformationLength;
+} REG_SET_INFORMATION_KEY_INFORMATION, *PREG_SET_INFORMATION_KEY_INFORMATION;
+
+typedef struct _REG_ENUMERATE_KEY_INFORMATION
+{
+ PVOID Object;
+ ULONG Index;
+ KEY_INFORMATION_CLASS KeyInformationClass;
+ PVOID KeyInformation;
+ ULONG Length;
+ PULONG ResultLength;
+} REG_ENUMERATE_KEY_INFORMATION, *PREG_ENUMERATE_KEY_INFORMATION;
+
+typedef struct _REG_ENUMERATE_VALUE_KEY_INFORMATION
+{
+ PVOID Object;
+ ULONG Index;
+ KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass;
+ PVOID KeyValueInformation;
+ ULONG Length;
+ PULONG ResultLength;
+} REG_ENUMERATE_VALUE_KEY_INFORMATION, *PREG_ENUMERATE_VALUE_KEY_INFORMATION;
+
+typedef struct _REG_QUERY_KEY_INFORMATION
+{
+ PVOID Object;
+ KEY_INFORMATION_CLASS KeyInformationClass;
+ PVOID KeyInformation;
+ ULONG Length;
+ PULONG ResultLength;
+} REG_QUERY_KEY_INFORMATION, *PREG_QUERY_KEY_INFORMATION;
+
+typedef struct _REG_QUERY_VALUE_KEY_INFORMATION
+{
+ PVOID Object;
+ PUNICODE_STRING ValueName;
+ KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass;
+ PVOID KeyValueInformation;
+ ULONG Length;
+ PULONG ResultLength;
+} REG_QUERY_VALUE_KEY_INFORMATION, *PREG_QUERY_VALUE_KEY_INFORMATION;
+
+typedef struct _REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION
+{
+ PVOID Object;
+ PKEY_VALUE_ENTRY ValueEntries;
+ ULONG EntryCount;
+ PVOID ValueBuffer;
+ PULONG BufferLength;
+ PULONG RequiredBufferLength;
+} REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION, *PREG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION;
+
+typedef struct _REG_PRE_CREATE_KEY_INFORMATION
+{
+ PUNICODE_STRING CompleteName;
+} REG_PRE_CREATE_KEY_INFORMATION, *PREG_PRE_CREATE_KEY_INFORMATION;
+
+typedef struct _REG_POST_CREATE_KEY_INFORMATION
+{
+ PUNICODE_STRING CompleteName;
+ PVOID Object;
+ NTSTATUS Status;
+} REG_POST_CREATE_KEY_INFORMATION, *PREG_POST_CREATE_KEY_INFORMATION;
+typedef struct _REG_PRE_OPEN_KEY_INFORMATION
+{
+ PUNICODE_STRING CompleteName;
+} REG_PRE_OPEN_KEY_INFORMATION, *PREG_PRE_OPEN_KEY_INFORMATION;
+
+typedef struct _REG_POST_OPEN_KEY_INFORMATION
+{
+ PUNICODE_STRING CompleteName;
+ PVOID Object;
+ NTSTATUS Status;
+} REG_POST_OPEN_KEY_INFORMATION, *PREG_POST_OPEN_KEY_INFORMATION;
+
+typedef struct _REG_POST_OPERATION_INFORMATION
+{
+ PVOID Object;
+ NTSTATUS Status;
+} REG_POST_OPERATION_INFORMATION,*PREG_POST_OPERATION_INFORMATION;
/*
** Storage structures
/* FIXME: How to handle these. SM_CMONITORS etc in winuser.h also. */
/* #if (WINVER >= 0x0500) */
DECLARE_HANDLE(HMONITOR);
+DECLARE_HANDLE(HUMPD);
#define HMONITOR_DECLARED 1
DECLARE_HANDLE(HTERMINAL);
DECLARE_HANDLE(HWINEVENTHOOK);