mirror of
https://github.com/reactos/reactos.git
synced 2025-05-19 17:14:32 +00:00
[PSDK]
- Add devpropdef.h and evntprov.h - Fix UOW redefinition. [DDK] - Fix PGUID redefinition. [XDK] - Add wmitypes.h and include it in wdm.h autogeneration template. - Move several definitions to their appropriate places. - Add HalGetDmaAlignment, LEGACY_BUS_INFORMATION, IO_DEVICE_EJECT_CALLBACK, PLUGPLAY_PROPERTY_PERSISTENT, and several missing Io*, DEVICE_*, REENUMERATE_*, PCI_*, PNP_*, Ob*, OB_*, PO_*, Wmi*, Etw* and ACPI related definitions. - Add CmKeyObjectType to exported object types. - Fix UOW redefinition. - Group some related definitions. [WDM] - Update wdm.h to reflect XDK changes. svn path=/branches/header-work/; revision=46329
This commit is contained in:
parent
e9047cd524
commit
b5c5fd533b
15 changed files with 3374 additions and 426 deletions
|
@ -12,7 +12,10 @@ extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define STDMETHODCALLTYPE __stdcall
|
#define STDMETHODCALLTYPE __stdcall
|
||||||
|
|
||||||
|
#ifndef _WDMDDK_
|
||||||
typedef GUID *PGUID;
|
typedef GUID *PGUID;
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Types */
|
/* Types */
|
||||||
|
|
||||||
|
|
1687
include/ddk/wdm.h
1687
include/ddk/wdm.h
File diff suppressed because it is too large
Load diff
84
include/psdk/devpropdef.h
Normal file
84
include/psdk/devpropdef.h
Normal file
|
@ -0,0 +1,84 @@
|
||||||
|
#ifndef _DEVPROPDEF_H_
|
||||||
|
#define _DEVPROPDEF_H_
|
||||||
|
|
||||||
|
typedef ULONG DEVPROPTYPE, *PDEVPROPTYPE;
|
||||||
|
|
||||||
|
#define DEVPROP_TYPEMOD_ARRAY 0x00001000
|
||||||
|
#define DEVPROP_TYPEMOD_LIST 0x00002000
|
||||||
|
|
||||||
|
#define DEVPROP_TYPE_EMPTY 0x00000000
|
||||||
|
#define DEVPROP_TYPE_NULL 0x00000001
|
||||||
|
#define DEVPROP_TYPE_SBYTE 0x00000002
|
||||||
|
#define DEVPROP_TYPE_BYTE 0x00000003
|
||||||
|
#define DEVPROP_TYPE_INT16 0x00000004
|
||||||
|
#define DEVPROP_TYPE_UINT16 0x00000005
|
||||||
|
#define DEVPROP_TYPE_INT32 0x00000006
|
||||||
|
#define DEVPROP_TYPE_UINT32 0x00000007
|
||||||
|
#define DEVPROP_TYPE_INT64 0x00000008
|
||||||
|
#define DEVPROP_TYPE_UINT64 0x00000009
|
||||||
|
#define DEVPROP_TYPE_FLOAT 0x0000000A
|
||||||
|
#define DEVPROP_TYPE_DOUBLE 0x0000000B
|
||||||
|
#define DEVPROP_TYPE_DECIMAL 0x0000000C
|
||||||
|
#define DEVPROP_TYPE_GUID 0x0000000D
|
||||||
|
#define DEVPROP_TYPE_CURRENCY 0x0000000E
|
||||||
|
#define DEVPROP_TYPE_DATE 0x0000000F
|
||||||
|
#define DEVPROP_TYPE_FILETIME 0x00000010
|
||||||
|
#define DEVPROP_TYPE_BOOLEAN 0x00000011
|
||||||
|
#define DEVPROP_TYPE_STRING 0x00000012
|
||||||
|
#define DEVPROP_TYPE_STRING_LIST (DEVPROP_TYPE_STRING|DEVPROP_TYPEMOD_LIST)
|
||||||
|
#define DEVPROP_TYPE_SECURITY_DESCRIPTOR 0x00000013
|
||||||
|
#define DEVPROP_TYPE_SECURITY_DESCRIPTOR_STRING 0x00000014
|
||||||
|
#define DEVPROP_TYPE_DEVPROPKEY 0x00000015
|
||||||
|
#define DEVPROP_TYPE_DEVPROPTYPE 0x00000016
|
||||||
|
#define DEVPROP_TYPE_BINARY (DEVPROP_TYPE_BYTE|DEVPROP_TYPEMOD_ARRAY)
|
||||||
|
#define DEVPROP_TYPE_ERROR 0x00000017
|
||||||
|
#define DEVPROP_TYPE_NTSTATUS 0x00000018
|
||||||
|
#define DEVPROP_TYPE_STRING_INDIRECT 0x00000019
|
||||||
|
|
||||||
|
#define MAX_DEVPROP_TYPE 0x00000019
|
||||||
|
#define MAX_DEVPROP_TYPEMOD 0x00002000
|
||||||
|
|
||||||
|
#define DEVPROP_MASK_TYPE 0x00000FFF
|
||||||
|
#define DEVPROP_MASK_TYPEMOD 0x0000F000
|
||||||
|
|
||||||
|
typedef CHAR DEVPROP_BOOLEAN, *PDEVPROP_BOOLEAN;
|
||||||
|
|
||||||
|
#define DEVPROP_TRUE ((DEVPROP_BOOLEAN)-1)
|
||||||
|
#define DEVPROP_FALSE ((DEVPROP_BOOLEAN) 0)
|
||||||
|
|
||||||
|
#ifndef DEVPROPKEY_DEFINED
|
||||||
|
#define DEVPROPKEY_DEFINED
|
||||||
|
|
||||||
|
typedef GUID DEVPROPGUID, *PDEVPROPGUID;
|
||||||
|
typedef ULONG DEVPROPID, *PDEVPROPID;
|
||||||
|
|
||||||
|
typedef struct _DEVPROPKEY {
|
||||||
|
DEVPROPGUID fmtid;
|
||||||
|
DEVPROPID pid;
|
||||||
|
} DEVPROPKEY, *PDEVPROPKEY;
|
||||||
|
|
||||||
|
#endif /* DEVPROPKEY_DEFINED */
|
||||||
|
|
||||||
|
#define DEVPROPID_FIRST_USABLE 2
|
||||||
|
|
||||||
|
#endif /* _DEVPROPDEF_H_ */
|
||||||
|
|
||||||
|
#ifdef DEFINE_DEVPROPKEY
|
||||||
|
#undef DEFINE_DEVPROPKEY
|
||||||
|
#endif
|
||||||
|
#ifdef INITGUID
|
||||||
|
#define DEFINE_DEVPROPKEY(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8, pid) EXTERN_C const DEVPROPKEY DECLSPEC_SELECTANY name = {{ l, w1, w2, {b1, b2, b3, b4, b5, b6, b7, b8}}, pid}
|
||||||
|
#else
|
||||||
|
#define DEFINE_DEVPROPKEY(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8, pid) EXTERN_C const DEVPROPKEY name
|
||||||
|
#endif /* INITGUID */
|
||||||
|
|
||||||
|
#ifndef IsEqualDevPropKey
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#define IsEqualDevPropKey(a, b) (((a).pid == (b).pid) && IsEqualIID((a).fmtid, (b).fmtid))
|
||||||
|
#else
|
||||||
|
#define IsEqualDevPropKey(a, b) (((a).pid == (b).pid) && IsEqualIID(&(a).fmtid, &(b).fmtid))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* !IsEqualDevPropKey */
|
||||||
|
|
335
include/psdk/evntprov.h
Normal file
335
include/psdk/evntprov.h
Normal file
|
@ -0,0 +1,335 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#ifndef EVNTAPI
|
||||||
|
#ifndef MIDL_PASS
|
||||||
|
#ifdef _EVNT_SOURCE_
|
||||||
|
#define EVNTAPI __stdcall
|
||||||
|
#else
|
||||||
|
#define EVNTAPI DECLSPEC_IMPORT __stdcall
|
||||||
|
#endif /* _EVNT_SOURCE_ */
|
||||||
|
#endif /* MIDL_PASS */
|
||||||
|
#endif /* EVNTAPI */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define EVENT_MIN_LEVEL (0)
|
||||||
|
#define EVENT_MAX_LEVEL (0xff)
|
||||||
|
|
||||||
|
#define EVENT_ACTIVITY_CTRL_GET_ID (1)
|
||||||
|
#define EVENT_ACTIVITY_CTRL_SET_ID (2)
|
||||||
|
#define EVENT_ACTIVITY_CTRL_CREATE_ID (3)
|
||||||
|
#define EVENT_ACTIVITY_CTRL_GET_SET_ID (4)
|
||||||
|
#define EVENT_ACTIVITY_CTRL_CREATE_SET_ID (5)
|
||||||
|
|
||||||
|
typedef ULONGLONG REGHANDLE, *PREGHANDLE;
|
||||||
|
|
||||||
|
#define MAX_EVENT_DATA_DESCRIPTORS (128)
|
||||||
|
#define MAX_EVENT_FILTER_DATA_SIZE (1024)
|
||||||
|
|
||||||
|
#define EVENT_FILTER_TYPE_SCHEMATIZED (0x80000000)
|
||||||
|
|
||||||
|
typedef struct _EVENT_DATA_DESCRIPTOR {
|
||||||
|
ULONGLONG Ptr;
|
||||||
|
ULONG Size;
|
||||||
|
ULONG Reserved;
|
||||||
|
} EVENT_DATA_DESCRIPTOR, *PEVENT_DATA_DESCRIPTOR;
|
||||||
|
|
||||||
|
typedef struct _EVENT_DESCRIPTOR {
|
||||||
|
USHORT Id;
|
||||||
|
UCHAR Version;
|
||||||
|
UCHAR Channel;
|
||||||
|
UCHAR Level;
|
||||||
|
UCHAR Opcode;
|
||||||
|
USHORT Task;
|
||||||
|
ULONGLONG Keyword;
|
||||||
|
} EVENT_DESCRIPTOR, *PEVENT_DESCRIPTOR;
|
||||||
|
typedef const EVENT_DESCRIPTOR *PCEVENT_DESCRIPTOR;
|
||||||
|
|
||||||
|
typedef struct _EVENT_FILTER_DESCRIPTOR {
|
||||||
|
ULONGLONG Ptr;
|
||||||
|
ULONG Size;
|
||||||
|
ULONG Type;
|
||||||
|
} EVENT_FILTER_DESCRIPTOR, *PEVENT_FILTER_DESCRIPTOR;
|
||||||
|
|
||||||
|
typedef struct _EVENT_FILTER_HEADER {
|
||||||
|
USHORT Id;
|
||||||
|
UCHAR Version;
|
||||||
|
UCHAR Reserved[5];
|
||||||
|
ULONGLONG InstanceId;
|
||||||
|
ULONG Size;
|
||||||
|
ULONG NextOffset;
|
||||||
|
} EVENT_FILTER_HEADER, *PEVENT_FILTER_HEADER;
|
||||||
|
|
||||||
|
#ifndef _ETW_KM_
|
||||||
|
|
||||||
|
typedef VOID
|
||||||
|
(NTAPI *PENABLECALLBACK)(
|
||||||
|
IN LPCGUID SourceId,
|
||||||
|
IN ULONG IsEnabled,
|
||||||
|
IN UCHAR Level,
|
||||||
|
IN ULONGLONG MatchAnyKeyword,
|
||||||
|
IN ULONGLONG MatchAllKeyword,
|
||||||
|
IN PEVENT_FILTER_DESCRIPTOR FilterData OPTIONAL,
|
||||||
|
IN OUT PVOID CallbackContext OPTIONAL);
|
||||||
|
|
||||||
|
#if (WINVER >= _WIN32_WINNT_VISTA)
|
||||||
|
ULONG
|
||||||
|
EVNTAPI
|
||||||
|
EventRegister(
|
||||||
|
IN LPCGUID ProviderId,
|
||||||
|
IN PENABLECALLBACK EnableCallback OPTIONAL,
|
||||||
|
IN PVOID CallbackContext OPTIONAL,
|
||||||
|
OUT PREGHANDLE RegHandle);
|
||||||
|
|
||||||
|
ULONG
|
||||||
|
EVNTAPI
|
||||||
|
EventUnregister(
|
||||||
|
IN REGHANDLE RegHandle);
|
||||||
|
|
||||||
|
BOOLEAN
|
||||||
|
EVNTAPI
|
||||||
|
EventEnabled(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor);
|
||||||
|
|
||||||
|
BOOLEAN
|
||||||
|
EVNTAPI
|
||||||
|
EventProviderEnabled(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN UCHAR Level,
|
||||||
|
IN ULONGLONG Keyword);
|
||||||
|
|
||||||
|
ULONG
|
||||||
|
EVNTAPI
|
||||||
|
EventWrite(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN ULONG UserDataCount,
|
||||||
|
IN PEVENT_DATA_DESCRIPTOR UserData);
|
||||||
|
|
||||||
|
ULONG
|
||||||
|
EVNTAPI
|
||||||
|
EventWriteTransfer(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN LPCGUID ActivityId OPTIONAL,
|
||||||
|
IN LPCGUID RelatedActivityId OPTIONAL,
|
||||||
|
IN ULONG UserDataCount,
|
||||||
|
IN PEVENT_DATA_DESCRIPTOR UserData OPTIONAL);
|
||||||
|
|
||||||
|
ULONG
|
||||||
|
EVNTAPI
|
||||||
|
EventWriteString(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN UCHAR Level,
|
||||||
|
IN ULONGLONG Keyword,
|
||||||
|
IN PCWSTR String);
|
||||||
|
|
||||||
|
ULONG
|
||||||
|
EVNTAPI
|
||||||
|
EventActivityIdControl(
|
||||||
|
IN ULONG ControlCode,
|
||||||
|
IN OUT LPGUID ActivityId);
|
||||||
|
|
||||||
|
#endif /* (WINVER >= _WIN32_WINNT_VISTA) */
|
||||||
|
|
||||||
|
#if (WINVER >= _WIN32_WINNT_WIN7)
|
||||||
|
ULONG
|
||||||
|
EVNTAPI
|
||||||
|
EventWriteEx(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN ULONG64 Filter,
|
||||||
|
IN ULONG Flags,
|
||||||
|
IN LPCGUID ActivityId OPTIONAL,
|
||||||
|
IN LPCGUID RelatedActivityId OPTIONAL,
|
||||||
|
IN ULONG UserDataCount,
|
||||||
|
IN PEVENT_DATA_DESCRIPTOR UserData OPTIONAL);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // _ETW_KM_
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
VOID
|
||||||
|
EventDataDescCreate(
|
||||||
|
OUT PEVENT_DATA_DESCRIPTOR EventDataDescriptor,
|
||||||
|
IN const VOID* DataPtr,
|
||||||
|
IN ULONG DataSize)
|
||||||
|
{
|
||||||
|
EventDataDescriptor->Ptr = (ULONGLONG)(ULONG_PTR)DataPtr;
|
||||||
|
EventDataDescriptor->Size = DataSize;
|
||||||
|
EventDataDescriptor->Reserved = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
VOID
|
||||||
|
EventDescCreate(
|
||||||
|
OUT PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN USHORT Id,
|
||||||
|
IN UCHAR Version,
|
||||||
|
IN UCHAR Channel,
|
||||||
|
IN UCHAR Level,
|
||||||
|
IN USHORT Task,
|
||||||
|
IN UCHAR Opcode,
|
||||||
|
IN ULONGLONG Keyword)
|
||||||
|
{
|
||||||
|
EventDescriptor->Id = Id;
|
||||||
|
EventDescriptor->Version = Version;
|
||||||
|
EventDescriptor->Channel = Channel;
|
||||||
|
EventDescriptor->Level = Level;
|
||||||
|
EventDescriptor->Task = Task;
|
||||||
|
EventDescriptor->Opcode = Opcode;
|
||||||
|
EventDescriptor->Keyword = Keyword;
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
VOID
|
||||||
|
EventDescZero(
|
||||||
|
OUT PEVENT_DESCRIPTOR EventDescriptor)
|
||||||
|
{
|
||||||
|
memset(EventDescriptor, 0, sizeof(EVENT_DESCRIPTOR));
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
USHORT
|
||||||
|
EventDescGetId(
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor)
|
||||||
|
{
|
||||||
|
return (EventDescriptor->Id);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
UCHAR
|
||||||
|
EventDescGetVersion(
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor)
|
||||||
|
{
|
||||||
|
return (EventDescriptor->Version);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
USHORT
|
||||||
|
EventDescGetTask(
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor)
|
||||||
|
{
|
||||||
|
return (EventDescriptor->Task);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
UCHAR
|
||||||
|
EventDescGetOpcode(
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor)
|
||||||
|
{
|
||||||
|
return (EventDescriptor->Opcode);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
UCHAR
|
||||||
|
EventDescGetChannel(
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor)
|
||||||
|
{
|
||||||
|
return (EventDescriptor->Channel);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
UCHAR
|
||||||
|
EventDescGetLevel(
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor)
|
||||||
|
{
|
||||||
|
return (EventDescriptor->Level);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
ULONGLONG
|
||||||
|
EventDescGetKeyword(
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor)
|
||||||
|
{
|
||||||
|
return (EventDescriptor->Keyword);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
PEVENT_DESCRIPTOR
|
||||||
|
EventDescSetId(
|
||||||
|
IN PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN USHORT Id)
|
||||||
|
{
|
||||||
|
EventDescriptor->Id = Id;
|
||||||
|
return (EventDescriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
PEVENT_DESCRIPTOR
|
||||||
|
EventDescSetVersion(
|
||||||
|
IN PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN UCHAR Version)
|
||||||
|
{
|
||||||
|
EventDescriptor->Version = Version;
|
||||||
|
return (EventDescriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
PEVENT_DESCRIPTOR
|
||||||
|
EventDescSetTask(
|
||||||
|
IN PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN USHORT Task)
|
||||||
|
{
|
||||||
|
EventDescriptor->Task = Task;
|
||||||
|
return (EventDescriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
PEVENT_DESCRIPTOR
|
||||||
|
EventDescSetOpcode(
|
||||||
|
IN PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN UCHAR Opcode)
|
||||||
|
{
|
||||||
|
EventDescriptor->Opcode = Opcode;
|
||||||
|
return (EventDescriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
PEVENT_DESCRIPTOR
|
||||||
|
EventDescSetLevel(
|
||||||
|
IN PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN UCHAR Level)
|
||||||
|
{
|
||||||
|
EventDescriptor->Level = Level;
|
||||||
|
return (EventDescriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
PEVENT_DESCRIPTOR
|
||||||
|
EventDescSetChannel(
|
||||||
|
IN PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN UCHAR Channel)
|
||||||
|
{
|
||||||
|
EventDescriptor->Channel = Channel;
|
||||||
|
return (EventDescriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
PEVENT_DESCRIPTOR
|
||||||
|
EventDescSetKeyword(
|
||||||
|
IN PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN ULONGLONG Keyword)
|
||||||
|
{
|
||||||
|
EventDescriptor->Keyword = Keyword;
|
||||||
|
return (EventDescriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
PEVENT_DESCRIPTOR
|
||||||
|
EventDescOrKeyword(
|
||||||
|
IN PEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN ULONGLONG Keyword)
|
||||||
|
{
|
||||||
|
EventDescriptor->Keyword |= Keyword;
|
||||||
|
return (EventDescriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
|
@ -72,7 +72,10 @@
|
||||||
#define MAX_TRANSACTION_DESCRIPTION_LENGTH 64
|
#define MAX_TRANSACTION_DESCRIPTION_LENGTH 64
|
||||||
#define MAX_RESOURCEMANAGER_DESCRIPTION_LENGTH 64
|
#define MAX_RESOURCEMANAGER_DESCRIPTION_LENGTH 64
|
||||||
|
|
||||||
|
#ifndef _WDMDDK_
|
||||||
typedef GUID UOW, *PUOW;
|
typedef GUID UOW, *PUOW;
|
||||||
|
#endif
|
||||||
|
|
||||||
typedef GUID CRM_PROTOCOL_ID, *PCRM_PROTOCOL_ID;
|
typedef GUID CRM_PROTOCOL_ID, *PCRM_PROTOCOL_ID;
|
||||||
typedef ULONG NOTIFICATION_MASK;
|
typedef ULONG NOTIFICATION_MASK;
|
||||||
typedef ULONG SAVEPOINT_ID, *PSAVEPOINT_ID;
|
typedef ULONG SAVEPOINT_ID, *PSAVEPOINT_ID;
|
||||||
|
|
|
@ -50,5 +50,19 @@ HalReadDmaCounter(
|
||||||
return counter;
|
return counter;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
FORCEINLINE
|
||||||
|
ULONG
|
||||||
|
HalGetDmaAlignment(
|
||||||
|
IN PDMA_ADAPTER DmaAdapter)
|
||||||
|
{
|
||||||
|
PGET_DMA_ALIGNMENT getDmaAlignment;
|
||||||
|
ULONG alignment;
|
||||||
|
|
||||||
|
getDmaAlignment = *(DmaAdapter)->DmaOperations->GetDmaAlignment;
|
||||||
|
ASSERT( getDmaAlignment != NULL );
|
||||||
|
alignment = getDmaAlignment( DmaAdapter );
|
||||||
|
return alignment;
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1498,10 +1498,54 @@ IoFreeSfioStreamIdentifier(
|
||||||
IN PFILE_OBJECT FileObject,
|
IN PFILE_OBJECT FileObject,
|
||||||
IN PVOID Signature);
|
IN PVOID Signature);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
IoRequestDeviceEjectEx(
|
||||||
|
IN PDEVICE_OBJECT PhysicalDeviceObject,
|
||||||
|
IN PIO_DEVICE_EJECT_CALLBACK Callback OPTIONAL,
|
||||||
|
IN PVOID Context OPTIONAL,
|
||||||
|
IN PDRIVER_OBJECT DriverObject OPTIONAL);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
IoSetDevicePropertyData(
|
||||||
|
IN PDEVICE_OBJECT Pdo,
|
||||||
|
IN CONST DEVPROPKEY *PropertyKey,
|
||||||
|
IN LCID Lcid,
|
||||||
|
IN ULONG Flags,
|
||||||
|
IN DEVPROPTYPE Type,
|
||||||
|
IN ULONG Size,
|
||||||
|
IN PVOID Data OPTIONAL);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
IoGetDevicePropertyData(
|
||||||
|
PDEVICE_OBJECT Pdo,
|
||||||
|
CONST DEVPROPKEY *PropertyKey,
|
||||||
|
LCID Lcid,
|
||||||
|
ULONG Flags,
|
||||||
|
ULONG Size,
|
||||||
|
PVOID Data,
|
||||||
|
PULONG RequiredSize,
|
||||||
|
PDEVPROPTYPE Type);
|
||||||
|
|
||||||
#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
|
#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
|
||||||
|
|
||||||
#define IoCallDriverStackSafeDefault(a, b) IoCallDriver(a, b)
|
#define IoCallDriverStackSafeDefault(a, b) IoCallDriver(a, b)
|
||||||
|
|
||||||
|
#if (NTDDI_VERSION >= NTDDI_WS08)
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
IoReplacePartitionUnit(
|
||||||
|
IN PDEVICE_OBJECT TargetPdo,
|
||||||
|
IN PDEVICE_OBJECT SparePdo,
|
||||||
|
IN ULONG Flags);
|
||||||
|
#endif
|
||||||
|
|
||||||
#if (NTDDI_VERSION >= NTDDI_WIN7)
|
#if (NTDDI_VERSION >= NTDDI_WIN7)
|
||||||
|
|
||||||
NTKERNELAPI
|
NTKERNELAPI
|
||||||
|
@ -1533,7 +1577,20 @@ NTAPI
|
||||||
IoUnregisterContainerNotification(
|
IoUnregisterContainerNotification(
|
||||||
IN PVOID CallbackRegistration);
|
IN PVOID CallbackRegistration);
|
||||||
|
|
||||||
#endif
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
IoUnregisterPlugPlayNotificationEx(
|
||||||
|
IN PVOID NotificationEntry);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
IoGetDeviceNumaNode(
|
||||||
|
IN PDEVICE_OBJECT Pdo,
|
||||||
|
OUT PUSHORT NodeNumber);
|
||||||
|
|
||||||
|
#endif /* (NTDDI_VERSION >= NTDDI_WIN7) */
|
||||||
|
|
||||||
#if defined(_WIN64)
|
#if defined(_WIN64)
|
||||||
NTKERNELAPI
|
NTKERNELAPI
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -345,21 +345,6 @@ typedef BOOLEAN
|
||||||
IN BOOLEAN Handled);
|
IN BOOLEAN Handled);
|
||||||
typedef NMI_CALLBACK *PNMI_CALLBACK;
|
typedef NMI_CALLBACK *PNMI_CALLBACK;
|
||||||
|
|
||||||
typedef enum _TRACE_INFORMATION_CLASS {
|
|
||||||
TraceIdClass,
|
|
||||||
TraceHandleClass,
|
|
||||||
TraceEnableFlagsClass,
|
|
||||||
TraceEnableLevelClass,
|
|
||||||
GlobalLoggerHandleClass,
|
|
||||||
EventLoggerHandleClass,
|
|
||||||
AllLoggerHandlesClass,
|
|
||||||
TraceHandleByNameClass,
|
|
||||||
LoggerEventsLostClass,
|
|
||||||
TraceSessionSettingsClass,
|
|
||||||
LoggerEventsLoggedClass,
|
|
||||||
MaxTraceInformationClass
|
|
||||||
} TRACE_INFORMATION_CLASS;
|
|
||||||
|
|
||||||
typedef enum _KE_PROCESSOR_CHANGE_NOTIFY_STATE {
|
typedef enum _KE_PROCESSOR_CHANGE_NOTIFY_STATE {
|
||||||
KeProcessorAddStartNotify = 0,
|
KeProcessorAddStartNotify = 0,
|
||||||
KeProcessorAddCompleteNotify,
|
KeProcessorAddCompleteNotify,
|
||||||
|
|
|
@ -56,5 +56,86 @@ ObReleaseObjectSecurity(
|
||||||
|
|
||||||
#endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
|
#endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
|
||||||
|
|
||||||
|
#if (NTDDI_VERSION >= NTDDI_VISTA)
|
||||||
|
NTKERNELAPI
|
||||||
|
VOID
|
||||||
|
NTAPI
|
||||||
|
ObDereferenceObjectDeferDelete(
|
||||||
|
IN PVOID Object);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if (NTDDI_VERSION >= NTDDI_VISTASP1)
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
ObRegisterCallbacks(
|
||||||
|
IN POB_CALLBACK_REGISTRATION CallbackRegistration,
|
||||||
|
OUT PVOID *RegistrationHandle);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
VOID
|
||||||
|
NTAPI
|
||||||
|
ObUnRegisterCallbacks(
|
||||||
|
IN PVOID RegistrationHandle);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
USHORT
|
||||||
|
NTAPI
|
||||||
|
ObGetFilterVersion(VOID);
|
||||||
|
|
||||||
|
#endif /* (NTDDI_VERSION >= NTDDI_VISTASP1) */
|
||||||
|
|
||||||
|
#if (NTDDI_VERSION >= NTDDI_WIN7)
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
ObReferenceObjectByHandleWithTag(
|
||||||
|
IN HANDLE Handle,
|
||||||
|
IN ACCESS_MASK DesiredAccess,
|
||||||
|
IN POBJECT_TYPE ObjectType OPTIONAL,
|
||||||
|
IN KPROCESSOR_MODE AccessMode,
|
||||||
|
IN ULONG Tag,
|
||||||
|
OUT PVOID *Object,
|
||||||
|
OUT POBJECT_HANDLE_INFORMATION HandleInformation OPTIONAL);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
LONG_PTR
|
||||||
|
FASTCALL
|
||||||
|
ObfReferenceObjectWithTag(
|
||||||
|
IN PVOID Object,
|
||||||
|
IN ULONG Tag);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
ObReferenceObjectByPointerWithTag(
|
||||||
|
IN PVOID Object,
|
||||||
|
IN ACCESS_MASK DesiredAccess,
|
||||||
|
IN POBJECT_TYPE ObjectType OPTIONAL,
|
||||||
|
IN KPROCESSOR_MODE AccessMode,
|
||||||
|
IN ULONG Tag);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
LONG_PTR
|
||||||
|
FASTCALL
|
||||||
|
ObfDereferenceObjectWithTag(
|
||||||
|
IN PVOID Object,
|
||||||
|
IN ULONG Tag);
|
||||||
|
|
||||||
|
NTKERNELAPI
|
||||||
|
VOID
|
||||||
|
NTAPI
|
||||||
|
ObDereferenceObjectDeferDeleteWithTag(
|
||||||
|
IN PVOID Object,
|
||||||
|
IN ULONG Tag);
|
||||||
|
|
||||||
|
#define ObDereferenceObject ObfDereferenceObject
|
||||||
|
#define ObReferenceObject ObfReferenceObject
|
||||||
|
#define ObDereferenceObjectWithTag ObfDereferenceObjectWithTag
|
||||||
|
#define ObReferenceObjectWithTag ObfReferenceObjectWithTag
|
||||||
|
|
||||||
|
#endif /* (NTDDI_VERSION >= NTDDI_WIN7) */
|
||||||
|
|
||||||
$endif
|
$endif
|
||||||
|
|
||||||
|
|
|
@ -2,11 +2,110 @@
|
||||||
* Object Manager Types *
|
* Object Manager Types *
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
|
#define OB_FLT_REGISTRATION_VERSION_0100 0x0100
|
||||||
|
#define OB_FLT_REGISTRATION_VERSION OB_FLT_REGISTRATION_VERSION_0100
|
||||||
|
|
||||||
|
typedef ULONG OB_OPERATION;
|
||||||
|
|
||||||
|
#define OB_OPERATION_HANDLE_CREATE 0x00000001
|
||||||
|
#define OB_OPERATION_HANDLE_DUPLICATE 0x00000002
|
||||||
|
|
||||||
|
typedef struct _OB_PRE_CREATE_HANDLE_INFORMATION {
|
||||||
|
IN OUT ACCESS_MASK DesiredAccess;
|
||||||
|
IN ACCESS_MASK OriginalDesiredAccess;
|
||||||
|
} OB_PRE_CREATE_HANDLE_INFORMATION, *POB_PRE_CREATE_HANDLE_INFORMATION;
|
||||||
|
|
||||||
|
typedef struct _OB_PRE_DUPLICATE_HANDLE_INFORMATION {
|
||||||
|
IN OUT ACCESS_MASK DesiredAccess;
|
||||||
|
IN ACCESS_MASK OriginalDesiredAccess;
|
||||||
|
IN PVOID SourceProcess;
|
||||||
|
IN PVOID TargetProcess;
|
||||||
|
} OB_PRE_DUPLICATE_HANDLE_INFORMATION, *POB_PRE_DUPLICATE_HANDLE_INFORMATION;
|
||||||
|
|
||||||
|
typedef union _OB_PRE_OPERATION_PARAMETERS {
|
||||||
|
IN OUT OB_PRE_CREATE_HANDLE_INFORMATION CreateHandleInformation;
|
||||||
|
IN OUT OB_PRE_DUPLICATE_HANDLE_INFORMATION DuplicateHandleInformation;
|
||||||
|
} OB_PRE_OPERATION_PARAMETERS, *POB_PRE_OPERATION_PARAMETERS;
|
||||||
|
|
||||||
|
typedef struct _OB_PRE_OPERATION_INFORMATION {
|
||||||
|
IN OB_OPERATION Operation;
|
||||||
|
union {
|
||||||
|
IN ULONG Flags;
|
||||||
|
struct {
|
||||||
|
IN ULONG KernelHandle:1;
|
||||||
|
IN ULONG Reserved:31;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
IN PVOID Object;
|
||||||
|
IN POBJECT_TYPE ObjectType;
|
||||||
|
OUT PVOID CallContext;
|
||||||
|
IN POB_PRE_OPERATION_PARAMETERS Parameters;
|
||||||
|
} OB_PRE_OPERATION_INFORMATION, *POB_PRE_OPERATION_INFORMATION;
|
||||||
|
|
||||||
|
typedef struct _OB_POST_CREATE_HANDLE_INFORMATION {
|
||||||
|
IN ACCESS_MASK GrantedAccess;
|
||||||
|
} OB_POST_CREATE_HANDLE_INFORMATION, *POB_POST_CREATE_HANDLE_INFORMATION;
|
||||||
|
|
||||||
|
typedef struct _OB_POST_DUPLICATE_HANDLE_INFORMATION {
|
||||||
|
IN ACCESS_MASK GrantedAccess;
|
||||||
|
} OB_POST_DUPLICATE_HANDLE_INFORMATION, *POB_POST_DUPLICATE_HANDLE_INFORMATION;
|
||||||
|
|
||||||
|
typedef union _OB_POST_OPERATION_PARAMETERS {
|
||||||
|
IN OB_POST_CREATE_HANDLE_INFORMATION CreateHandleInformation;
|
||||||
|
IN OB_POST_DUPLICATE_HANDLE_INFORMATION DuplicateHandleInformation;
|
||||||
|
} OB_POST_OPERATION_PARAMETERS, *POB_POST_OPERATION_PARAMETERS;
|
||||||
|
|
||||||
|
typedef struct _OB_POST_OPERATION_INFORMATION {
|
||||||
|
IN OB_OPERATION Operation;
|
||||||
|
union {
|
||||||
|
IN ULONG Flags;
|
||||||
|
struct {
|
||||||
|
IN ULONG KernelHandle:1;
|
||||||
|
IN ULONG Reserved:31;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
IN PVOID Object;
|
||||||
|
IN POBJECT_TYPE ObjectType;
|
||||||
|
IN PVOID CallContext;
|
||||||
|
IN NTSTATUS ReturnStatus;
|
||||||
|
IN POB_POST_OPERATION_PARAMETERS Parameters;
|
||||||
|
} OB_POST_OPERATION_INFORMATION,*POB_POST_OPERATION_INFORMATION;
|
||||||
|
|
||||||
|
typedef enum _OB_PREOP_CALLBACK_STATUS {
|
||||||
|
OB_PREOP_SUCCESS
|
||||||
|
} OB_PREOP_CALLBACK_STATUS, *POB_PREOP_CALLBACK_STATUS;
|
||||||
|
|
||||||
|
typedef OB_PREOP_CALLBACK_STATUS
|
||||||
|
(NTAPI *POB_PRE_OPERATION_CALLBACK)(
|
||||||
|
IN PVOID RegistrationContext,
|
||||||
|
IN OUT POB_PRE_OPERATION_INFORMATION OperationInformation);
|
||||||
|
|
||||||
|
typedef VOID
|
||||||
|
(NTAPI *POB_POST_OPERATION_CALLBACK)(
|
||||||
|
IN PVOID RegistrationContext,
|
||||||
|
IN POB_POST_OPERATION_INFORMATION OperationInformation);
|
||||||
|
|
||||||
|
typedef struct _OB_OPERATION_REGISTRATION {
|
||||||
|
IN POBJECT_TYPE *ObjectType;
|
||||||
|
IN OB_OPERATION Operations;
|
||||||
|
IN POB_PRE_OPERATION_CALLBACK PreOperation;
|
||||||
|
IN POB_POST_OPERATION_CALLBACK PostOperation;
|
||||||
|
} OB_OPERATION_REGISTRATION, *POB_OPERATION_REGISTRATION;
|
||||||
|
|
||||||
|
typedef struct _OB_CALLBACK_REGISTRATION {
|
||||||
|
IN USHORT Version;
|
||||||
|
IN USHORT OperationRegistrationCount;
|
||||||
|
IN UNICODE_STRING Altitude;
|
||||||
|
IN PVOID RegistrationContext;
|
||||||
|
IN OB_OPERATION_REGISTRATION *OperationRegistration;
|
||||||
|
} OB_CALLBACK_REGISTRATION, *POB_CALLBACK_REGISTRATION;
|
||||||
|
|
||||||
typedef struct _OBJECT_NAME_INFORMATION {
|
typedef struct _OBJECT_NAME_INFORMATION {
|
||||||
UNICODE_STRING Name;
|
UNICODE_STRING Name;
|
||||||
} OBJECT_NAME_INFORMATION, *POBJECT_NAME_INFORMATION;
|
} OBJECT_NAME_INFORMATION, *POBJECT_NAME_INFORMATION;
|
||||||
|
|
||||||
/* Exported object types */
|
/* Exported object types */
|
||||||
|
extern POBJECT_TYPE NTSYSAPI CmKeyObjectType;
|
||||||
extern POBJECT_TYPE NTSYSAPI ExEventObjectType;
|
extern POBJECT_TYPE NTSYSAPI ExEventObjectType;
|
||||||
extern POBJECT_TYPE NTSYSAPI ExSemaphoreObjectType;
|
extern POBJECT_TYPE NTSYSAPI ExSemaphoreObjectType;
|
||||||
extern POBJECT_TYPE NTSYSAPI IoFileObjectType;
|
extern POBJECT_TYPE NTSYSAPI IoFileObjectType;
|
||||||
|
|
|
@ -5,6 +5,13 @@
|
||||||
#ifndef _PO_DDK_
|
#ifndef _PO_DDK_
|
||||||
#define _PO_DDK_
|
#define _PO_DDK_
|
||||||
|
|
||||||
|
#define PO_CB_SYSTEM_POWER_POLICY 0
|
||||||
|
#define PO_CB_AC_STATUS 1
|
||||||
|
#define PO_CB_BUTTON_COLLISION 2
|
||||||
|
#define PO_CB_SYSTEM_STATE_LOCK 3
|
||||||
|
#define PO_CB_LID_SWITCH_STATE 4
|
||||||
|
#define PO_CB_PROCESSOR_POWER_POLICY 5
|
||||||
|
|
||||||
/* Power States/Levels */
|
/* Power States/Levels */
|
||||||
typedef enum _SYSTEM_POWER_STATE {
|
typedef enum _SYSTEM_POWER_STATE {
|
||||||
PowerSystemUnspecified = 0,
|
PowerSystemUnspecified = 0,
|
||||||
|
@ -385,19 +392,21 @@ DEFINE_GUID(GUID_ENABLE_SWITCH_FORCED_SHUTDOWN, 0x833a6b62, 0xdfa4, 0x46d1, 0x82
|
||||||
#define POWER_DEVICE_IDLE_POLICY_CONSERVATIVE 1
|
#define POWER_DEVICE_IDLE_POLICY_CONSERVATIVE 1
|
||||||
|
|
||||||
typedef VOID
|
typedef VOID
|
||||||
(NTAPI *PREQUEST_POWER_COMPLETE)(
|
(NTAPI REQUEST_POWER_COMPLETE)(
|
||||||
IN struct _DEVICE_OBJECT *DeviceObject,
|
IN struct _DEVICE_OBJECT *DeviceObject,
|
||||||
IN UCHAR MinorFunction,
|
IN UCHAR MinorFunction,
|
||||||
IN POWER_STATE PowerState,
|
IN POWER_STATE PowerState,
|
||||||
IN PVOID Context,
|
IN PVOID Context,
|
||||||
IN struct _IO_STATUS_BLOCK *IoStatus);
|
IN struct _IO_STATUS_BLOCK *IoStatus);
|
||||||
|
typedef REQUEST_POWER_COMPLETE *PREQUEST_POWER_COMPLETE;
|
||||||
|
|
||||||
typedef
|
typedef
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
(NTAPI *PPOWER_SETTING_CALLBACK)(
|
(NTAPI POWER_SETTING_CALLBACK)(
|
||||||
IN LPCGUID SettingGuid,
|
IN LPCGUID SettingGuid,
|
||||||
IN PVOID Value,
|
IN PVOID Value,
|
||||||
IN ULONG ValueLength,
|
IN ULONG ValueLength,
|
||||||
IN OUT PVOID Context OPTIONAL);
|
IN OUT PVOID Context OPTIONAL);
|
||||||
|
typedef POWER_SETTING_CALLBACK *PPOWER_SETTING_CALLBACK;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -44,6 +44,12 @@
|
||||||
#include <guiddef.h>
|
#include <guiddef.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef _KTMTYPES_
|
||||||
|
typedef GUID UOW, *PUOW;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
typedef GUID *PGUID;
|
||||||
|
|
||||||
#if (NTDDI_VERSION >= NTDDI_WINXP)
|
#if (NTDDI_VERSION >= NTDDI_WINXP)
|
||||||
#include <dpfilter.h>
|
#include <dpfilter.h>
|
||||||
#endif
|
#endif
|
||||||
|
@ -154,6 +160,7 @@ $include (cmtypes.h)
|
||||||
$include (iotypes.h)
|
$include (iotypes.h)
|
||||||
$include (obtypes.h)
|
$include (obtypes.h)
|
||||||
$include (pstypes.h)
|
$include (pstypes.h)
|
||||||
|
$include (wmitypes.h)
|
||||||
|
|
||||||
#if defined(_M_IX86)
|
#if defined(_M_IX86)
|
||||||
$include(x86/ke.h)
|
$include(x86/ke.h)
|
||||||
|
@ -268,7 +275,6 @@ extern PBOOLEAN Mm64BitPhysicalAddress;
|
||||||
|
|
||||||
extern PVOID MmBadPointer;
|
extern PVOID MmBadPointer;
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
#ifdef RUN_WPP
|
#ifdef RUN_WPP
|
||||||
|
|
||||||
#if (NTDDI_VERSION >= NTDDI_WINXP)
|
#if (NTDDI_VERSION >= NTDDI_WINXP)
|
||||||
NTKERNELAPI
|
NTKERNELAPI
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
@ -15,8 +14,7 @@ WmiTraceMessage(
|
||||||
IN USHORT MessageNumber,
|
IN USHORT MessageNumber,
|
||||||
IN ...);
|
IN ...);
|
||||||
#endif
|
#endif
|
||||||
|
#endif /* RUN_WPP */
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (NTDDI_VERSION >= NTDDI_WINXP)
|
#if (NTDDI_VERSION >= NTDDI_WINXP)
|
||||||
|
|
||||||
|
@ -43,5 +41,112 @@ WmiTraceMessageVa(
|
||||||
IN va_list MessageArgList);
|
IN va_list MessageArgList);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#endif /* (NTDDI_VERSION >= NTDDI_WINXP) */
|
||||||
|
|
||||||
|
#ifndef TRACE_INFORMATION_CLASS_DEFINE
|
||||||
|
|
||||||
|
#if (NTDDI_VERSION >= NTDDI_WINXP)
|
||||||
|
NTKERNELAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
WmiQueryTraceInformation(
|
||||||
|
IN TRACE_INFORMATION_CLASS TraceInformationClass,
|
||||||
|
OUT PVOID TraceInformation,
|
||||||
|
IN ULONG TraceInformationLength,
|
||||||
|
OUT PULONG RequiredLength OPTIONAL,
|
||||||
|
IN PVOID Buffer OPTIONAL);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#define TRACE_INFORMATION_CLASS_DEFINE
|
||||||
|
|
||||||
|
#endif /* TRACE_INFOPRMATION_CLASS_DEFINE */
|
||||||
|
|
||||||
|
#if (NTDDI_VERSION >= NTDDI_VISTA)
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwRegister(
|
||||||
|
IN LPCGUID ProviderId,
|
||||||
|
IN PETWENABLECALLBACK EnableCallback OPTIONAL,
|
||||||
|
IN PVOID CallbackContext OPTIONAL,
|
||||||
|
OUT PREGHANDLE RegHandle);
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwUnregister(
|
||||||
|
IN REGHANDLE RegHandle);
|
||||||
|
|
||||||
|
BOOLEAN
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwEventEnabled(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor);
|
||||||
|
|
||||||
|
BOOLEAN
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwProviderEnabled(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN UCHAR Level,
|
||||||
|
IN ULONGLONG Keyword);
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwActivityIdControl(
|
||||||
|
IN ULONG ControlCode,
|
||||||
|
IN OUT LPGUID ActivityId);
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwWrite(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN LPCGUID ActivityId OPTIONAL,
|
||||||
|
IN ULONG UserDataCount,
|
||||||
|
IN PEVENT_DATA_DESCRIPTOR UserData OPTIONAL);
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwWriteTransfer(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN LPCGUID ActivityId OPTIONAL,
|
||||||
|
IN LPCGUID RelatedActivityId OPTIONAL,
|
||||||
|
IN ULONG UserDataCount,
|
||||||
|
IN PEVENT_DATA_DESCRIPTOR UserData OPTIONAL);
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwWriteString(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN UCHAR Level,
|
||||||
|
IN ULONGLONG Keyword,
|
||||||
|
IN LPCGUID ActivityId OPTIONAL,
|
||||||
|
IN PCWSTR String);
|
||||||
|
|
||||||
|
#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
|
||||||
|
|
||||||
|
#if (NTDDI_VERSION >= NTDDI_WIN7)
|
||||||
|
NTSTATUS
|
||||||
|
NTKERNELAPI
|
||||||
|
NTAPI
|
||||||
|
EtwWriteEx(
|
||||||
|
IN REGHANDLE RegHandle,
|
||||||
|
IN PCEVENT_DESCRIPTOR EventDescriptor,
|
||||||
|
IN ULONG64 Filter,
|
||||||
|
IN ULONG Flags,
|
||||||
|
IN LPCGUID ActivityId OPTIONAL,
|
||||||
|
IN LPCGUID RelatedActivityId OPTIONAL,
|
||||||
|
IN ULONG UserDataCount,
|
||||||
|
IN PEVENT_DATA_DESCRIPTOR UserData OPTIONAL);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
57
include/xdk/wmitypes.h
Normal file
57
include/xdk/wmitypes.h
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* WMI Library Support Types *
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
#ifdef RUN_WPP
|
||||||
|
#include <evntrace.h>
|
||||||
|
#include <stdarg.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef TRACE_INFORMATION_CLASS_DEFINE
|
||||||
|
|
||||||
|
typedef struct _ETW_TRACE_SESSION_SETTINGS {
|
||||||
|
ULONG Version;
|
||||||
|
ULONG BufferSize;
|
||||||
|
ULONG MinimumBuffers;
|
||||||
|
ULONG MaximumBuffers;
|
||||||
|
ULONG LoggerMode;
|
||||||
|
ULONG FlushTimer;
|
||||||
|
ULONG FlushThreshold;
|
||||||
|
ULONG ClockType;
|
||||||
|
} ETW_TRACE_SESSION_SETTINGS, *PETW_TRACE_SESSION_SETTINGS;
|
||||||
|
|
||||||
|
typedef enum _TRACE_INFORMATION_CLASS {
|
||||||
|
TraceIdClass,
|
||||||
|
TraceHandleClass,
|
||||||
|
TraceEnableFlagsClass,
|
||||||
|
TraceEnableLevelClass,
|
||||||
|
GlobalLoggerHandleClass,
|
||||||
|
EventLoggerHandleClass,
|
||||||
|
AllLoggerHandlesClass,
|
||||||
|
TraceHandleByNameClass,
|
||||||
|
LoggerEventsLostClass,
|
||||||
|
TraceSessionSettingsClass,
|
||||||
|
LoggerEventsLoggedClass,
|
||||||
|
MaxTraceInformationClass
|
||||||
|
} TRACE_INFORMATION_CLASS;
|
||||||
|
|
||||||
|
#endif /* TRACE_INFORMATION_CLASS_DEFINE */
|
||||||
|
|
||||||
|
#ifndef _ETW_KM_
|
||||||
|
#define _ETW_KM_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <evntprov.h>
|
||||||
|
|
||||||
|
typedef VOID
|
||||||
|
(NTAPI *PETWENABLECALLBACK)(
|
||||||
|
IN LPCGUID SourceId,
|
||||||
|
IN ULONG ControlCode,
|
||||||
|
IN UCHAR Level,
|
||||||
|
IN ULONGLONG MatchAnyKeyword,
|
||||||
|
IN ULONGLONG MatchAllKeyword,
|
||||||
|
IN PEVENT_FILTER_DESCRIPTOR FilterData OPTIONAL,
|
||||||
|
IN OUT PVOID CallbackContext OPTIONAL);
|
||||||
|
|
||||||
|
#define EVENT_WRITE_FLAG_NO_FAULTING 0x00000001
|
||||||
|
|
Loading…
Reference in a new issue