Mercurial > games > semicongine
comparison fuhtark_test/include/winapi/evntrace.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1499:1f58458b7ef7 | 1500:91c8c3b7cbf0 |
|---|---|
| 1 /** | |
| 2 * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 * This file is part of the w64 mingw-runtime package. | |
| 4 * No warranty is given; refer to the file DISCLAIMER within this package. | |
| 5 */ | |
| 6 #ifndef _EVNTRACE_ | |
| 7 #define _EVNTRACE_ | |
| 8 | |
| 9 #if defined(_WINNT_) || defined(WINNT) | |
| 10 #ifndef WMIAPI | |
| 11 #define WMIAPI DECLSPEC_IMPORT WINAPI | |
| 12 #endif | |
| 13 | |
| 14 #include <guiddef.h> | |
| 15 | |
| 16 DEFINE_GUID (EventTraceGuid,0x68fdd900,0x4a3e,0x11d1,0x84,0xf4,0x00,0x00,0xf8,0x04,0x64,0xe3); | |
| 17 DEFINE_GUID (SystemTraceControlGuid,0x9e814aad,0x3204,0x11d2,0x9a,0x82,0x00,0x60,0x08,0xa8,0x69,0x39); | |
| 18 DEFINE_GUID (EventTraceConfigGuid,0x01853a65,0x418f,0x4f36,0xae,0xfc,0xdc,0x0f,0x1d,0x2f,0xd2,0x35); | |
| 19 DEFINE_GUID (DefaultTraceSecurityGuid,0x0811c1af,0x7a07,0x4a06,0x82,0xed,0x86,0x94,0x55,0xcd,0xf7,0x13); | |
| 20 | |
| 21 #define KERNEL_LOGGER_NAMEW L"NT Kernel Logger" | |
| 22 #define GLOBAL_LOGGER_NAMEW L"GlobalLogger" | |
| 23 #define EVENT_LOGGER_NAMEW L"Event Log" | |
| 24 | |
| 25 #define KERNEL_LOGGER_NAMEA "NT Kernel Logger" | |
| 26 #define GLOBAL_LOGGER_NAMEA "GlobalLogger" | |
| 27 #define EVENT_LOGGER_NAMEA "Event Log" | |
| 28 | |
| 29 #define MAX_MOF_FIELDS 16 | |
| 30 typedef ULONG64 TRACEHANDLE,*PTRACEHANDLE; | |
| 31 | |
| 32 #define EVENT_TRACE_TYPE_INFO 0x00 | |
| 33 #define EVENT_TRACE_TYPE_START 0x01 | |
| 34 #define EVENT_TRACE_TYPE_END 0x02 | |
| 35 #define EVENT_TRACE_TYPE_DC_START 0x03 | |
| 36 #define EVENT_TRACE_TYPE_DC_END 0x04 | |
| 37 #define EVENT_TRACE_TYPE_EXTENSION 0x05 | |
| 38 #define EVENT_TRACE_TYPE_REPLY 0x06 | |
| 39 #define EVENT_TRACE_TYPE_DEQUEUE 0x07 | |
| 40 #define EVENT_TRACE_TYPE_CHECKPOINT 0x08 | |
| 41 #define EVENT_TRACE_TYPE_RESERVED9 0x09 | |
| 42 | |
| 43 #define TRACE_LEVEL_NONE 0 | |
| 44 #define TRACE_LEVEL_FATAL 1 | |
| 45 #define TRACE_LEVEL_ERROR 2 | |
| 46 #define TRACE_LEVEL_WARNING 3 | |
| 47 #define TRACE_LEVEL_INFORMATION 4 | |
| 48 #define TRACE_LEVEL_VERBOSE 5 | |
| 49 #define TRACE_LEVEL_RESERVED6 6 | |
| 50 #define TRACE_LEVEL_RESERVED7 7 | |
| 51 #define TRACE_LEVEL_RESERVED8 8 | |
| 52 #define TRACE_LEVEL_RESERVED9 9 | |
| 53 | |
| 54 #define EVENT_TRACE_TYPE_LOAD 0x0A | |
| 55 #define EVENT_TRACE_TYPE_IO_READ 0x0A | |
| 56 #define EVENT_TRACE_TYPE_IO_WRITE 0x0B | |
| 57 | |
| 58 #define EVENT_TRACE_TYPE_MM_TF 0x0A | |
| 59 #define EVENT_TRACE_TYPE_MM_DZF 0x0B | |
| 60 #define EVENT_TRACE_TYPE_MM_COW 0x0C | |
| 61 #define EVENT_TRACE_TYPE_MM_GPF 0x0D | |
| 62 #define EVENT_TRACE_TYPE_MM_HPF 0x0E | |
| 63 | |
| 64 #define EVENT_TRACE_TYPE_SEND 0x0A | |
| 65 #define EVENT_TRACE_TYPE_RECEIVE 0x0B | |
| 66 #define EVENT_TRACE_TYPE_CONNECT 0x0C | |
| 67 #define EVENT_TRACE_TYPE_DISCONNECT 0x0D | |
| 68 #define EVENT_TRACE_TYPE_RETRANSMIT 0x0E | |
| 69 #define EVENT_TRACE_TYPE_ACCEPT 0x0F | |
| 70 #define EVENT_TRACE_TYPE_RECONNECT 0x10 | |
| 71 #define EVENT_TRACE_TYPE_CONNFAIL 0x11 | |
| 72 #define EVENT_TRACE_TYPE_COPY_TCP 0x12 | |
| 73 #define EVENT_TRACE_TYPE_COPY_ARP 0x13 | |
| 74 #define EVENT_TRACE_TYPE_ACKFULL 0x14 | |
| 75 #define EVENT_TRACE_TYPE_ACKPART 0x15 | |
| 76 #define EVENT_TRACE_TYPE_ACKDUP 0x16 | |
| 77 | |
| 78 #define EVENT_TRACE_TYPE_GUIDMAP 0x0A | |
| 79 #define EVENT_TRACE_TYPE_CONFIG 0x0B | |
| 80 #define EVENT_TRACE_TYPE_SIDINFO 0x0C | |
| 81 #define EVENT_TRACE_TYPE_SECURITY 0x0D | |
| 82 | |
| 83 #define EVENT_TRACE_TYPE_REGCREATE 0x0A | |
| 84 #define EVENT_TRACE_TYPE_REGOPEN 0x0B | |
| 85 #define EVENT_TRACE_TYPE_REGDELETE 0x0C | |
| 86 #define EVENT_TRACE_TYPE_REGQUERY 0x0D | |
| 87 #define EVENT_TRACE_TYPE_REGSETVALUE 0x0E | |
| 88 #define EVENT_TRACE_TYPE_REGDELETEVALUE 0x0F | |
| 89 #define EVENT_TRACE_TYPE_REGQUERYVALUE 0x10 | |
| 90 #define EVENT_TRACE_TYPE_REGENUMERATEKEY 0x11 | |
| 91 #define EVENT_TRACE_TYPE_REGENUMERATEVALUEKEY 0x12 | |
| 92 #define EVENT_TRACE_TYPE_REGQUERYMULTIPLEVALUE 0x13 | |
| 93 #define EVENT_TRACE_TYPE_REGSETINFORMATION 0x14 | |
| 94 #define EVENT_TRACE_TYPE_REGFLUSH 0x15 | |
| 95 #define EVENT_TRACE_TYPE_REGKCBDMP 0x16 | |
| 96 | |
| 97 #define EVENT_TRACE_TYPE_CONFIG_CPU 0x0A | |
| 98 #define EVENT_TRACE_TYPE_CONFIG_PHYSICALDISK 0x0B | |
| 99 #define EVENT_TRACE_TYPE_CONFIG_LOGICALDISK 0x0C | |
| 100 #define EVENT_TRACE_TYPE_CONFIG_NIC 0x0D | |
| 101 #define EVENT_TRACE_TYPE_CONFIG_VIDEO 0x0E | |
| 102 #define EVENT_TRACE_TYPE_CONFIG_SERVICES 0x0F | |
| 103 #define EVENT_TRACE_TYPE_CONFIG_POWER 0x10 | |
| 104 #define EVENT_TRACE_TYPE_CONFIG_NETINFO 0x11 | |
| 105 | |
| 106 #define EVENT_TRACE_FLAG_PROCESS 0x00000001 | |
| 107 #define EVENT_TRACE_FLAG_THREAD 0x00000002 | |
| 108 #define EVENT_TRACE_FLAG_IMAGE_LOAD 0x00000004 | |
| 109 | |
| 110 #define EVENT_TRACE_FLAG_DISK_IO 0x00000100 | |
| 111 #define EVENT_TRACE_FLAG_DISK_FILE_IO 0x00000200 | |
| 112 | |
| 113 #define EVENT_TRACE_FLAG_MEMORY_PAGE_FAULTS 0x00001000 | |
| 114 #define EVENT_TRACE_FLAG_MEMORY_HARD_FAULTS 0x00002000 | |
| 115 | |
| 116 #define EVENT_TRACE_FLAG_NETWORK_TCPIP 0x00010000 | |
| 117 | |
| 118 #define EVENT_TRACE_FLAG_REGISTRY 0x00020000 | |
| 119 #define EVENT_TRACE_FLAG_DBGPRINT 0x00040000 | |
| 120 | |
| 121 #define EVENT_TRACE_FLAG_VOLMGR 0x00200000 | |
| 122 | |
| 123 #define EVENT_TRACE_FLAG_EXTENSION 0x80000000 | |
| 124 #define EVENT_TRACE_FLAG_FORWARD_WMI 0x40000000 | |
| 125 #define EVENT_TRACE_FLAG_ENABLE_RESERVE 0x20000000 | |
| 126 | |
| 127 #define EVENT_TRACE_FILE_MODE_NONE 0x00000000 | |
| 128 #define EVENT_TRACE_FILE_MODE_SEQUENTIAL 0x00000001 | |
| 129 #define EVENT_TRACE_FILE_MODE_CIRCULAR 0x00000002 | |
| 130 #define EVENT_TRACE_FILE_MODE_APPEND 0x00000004 | |
| 131 #define EVENT_TRACE_FILE_MODE_NEWFILE 0x00000008 | |
| 132 | |
| 133 #define EVENT_TRACE_FILE_MODE_PREALLOCATE 0x00000020 | |
| 134 | |
| 135 #define EVENT_TRACE_REAL_TIME_MODE 0x00000100 | |
| 136 #define EVENT_TRACE_DELAY_OPEN_FILE_MODE 0x00000200 | |
| 137 #define EVENT_TRACE_BUFFERING_MODE 0x00000400 | |
| 138 #define EVENT_TRACE_PRIVATE_LOGGER_MODE 0x00000800 | |
| 139 #define EVENT_TRACE_ADD_HEADER_MODE 0x00001000 | |
| 140 #define EVENT_TRACE_USE_GLOBAL_SEQUENCE 0x00004000 | |
| 141 #define EVENT_TRACE_USE_LOCAL_SEQUENCE 0x00008000 | |
| 142 | |
| 143 #define EVENT_TRACE_RELOG_MODE 0x00010000 | |
| 144 | |
| 145 #define EVENT_TRACE_USE_PAGED_MEMORY 0x01000000 | |
| 146 | |
| 147 #define EVENT_TRACE_CONTROL_QUERY 0 | |
| 148 #define EVENT_TRACE_CONTROL_STOP 1 | |
| 149 #define EVENT_TRACE_CONTROL_UPDATE 2 | |
| 150 #define EVENT_TRACE_CONTROL_FLUSH 3 | |
| 151 | |
| 152 #define TRACE_MESSAGE_SEQUENCE 1 | |
| 153 #define TRACE_MESSAGE_GUID 2 | |
| 154 #define TRACE_MESSAGE_COMPONENTID 4 | |
| 155 #define TRACE_MESSAGE_TIMESTAMP 8 | |
| 156 #define TRACE_MESSAGE_PERFORMANCE_TIMESTAMP 16 | |
| 157 #define TRACE_MESSAGE_SYSTEMINFO 32 | |
| 158 #define TRACE_MESSAGE_FLAG_MASK 0xFFFF | |
| 159 | |
| 160 #define TRACE_MESSAGE_MAXIMUM_SIZE 8*1024 | |
| 161 | |
| 162 #define EVENT_TRACE_USE_PROCTIME 0x0001 | |
| 163 #define EVENT_TRACE_USE_NOCPUTIME 0x0002 | |
| 164 | |
| 165 typedef struct _EVENT_TRACE_HEADER { | |
| 166 USHORT Size; | |
| 167 __MINGW_EXTENSION union { | |
| 168 USHORT FieldTypeFlags; | |
| 169 __MINGW_EXTENSION struct { | |
| 170 UCHAR HeaderType; | |
| 171 UCHAR MarkerFlags; | |
| 172 }; | |
| 173 }; | |
| 174 __MINGW_EXTENSION union { | |
| 175 ULONG Version; | |
| 176 struct { | |
| 177 UCHAR Type; | |
| 178 UCHAR Level; | |
| 179 USHORT Version; | |
| 180 } Class; | |
| 181 }; | |
| 182 ULONG ThreadId; | |
| 183 ULONG ProcessId; | |
| 184 LARGE_INTEGER TimeStamp; | |
| 185 __MINGW_EXTENSION union { | |
| 186 GUID Guid; | |
| 187 ULONGLONG GuidPtr; | |
| 188 }; | |
| 189 __MINGW_EXTENSION union { | |
| 190 __MINGW_EXTENSION struct { | |
| 191 ULONG ClientContext; | |
| 192 ULONG Flags; | |
| 193 }; | |
| 194 __MINGW_EXTENSION struct { | |
| 195 ULONG KernelTime; | |
| 196 ULONG UserTime; | |
| 197 }; | |
| 198 ULONG64 ProcessorTime; | |
| 199 }; | |
| 200 } EVENT_TRACE_HEADER,*PEVENT_TRACE_HEADER; | |
| 201 | |
| 202 typedef struct _EVENT_INSTANCE_HEADER { | |
| 203 USHORT Size; | |
| 204 __MINGW_EXTENSION union { | |
| 205 USHORT FieldTypeFlags; | |
| 206 __MINGW_EXTENSION struct { | |
| 207 UCHAR HeaderType; | |
| 208 UCHAR MarkerFlags; | |
| 209 }; | |
| 210 }; | |
| 211 __MINGW_EXTENSION union { | |
| 212 ULONG Version; | |
| 213 struct { | |
| 214 UCHAR Type; | |
| 215 UCHAR Level; | |
| 216 USHORT Version; | |
| 217 } Class; | |
| 218 }; | |
| 219 ULONG ThreadId; | |
| 220 ULONG ProcessId; | |
| 221 LARGE_INTEGER TimeStamp; | |
| 222 ULONGLONG RegHandle; | |
| 223 ULONG InstanceId; | |
| 224 ULONG ParentInstanceId; | |
| 225 __MINGW_EXTENSION union { | |
| 226 __MINGW_EXTENSION struct { | |
| 227 ULONG ClientContext; | |
| 228 ULONG Flags; | |
| 229 }; | |
| 230 __MINGW_EXTENSION struct { | |
| 231 ULONG KernelTime; | |
| 232 ULONG UserTime; | |
| 233 }; | |
| 234 ULONG64 ProcessorTime; | |
| 235 }; | |
| 236 ULONGLONG ParentRegHandle; | |
| 237 } EVENT_INSTANCE_HEADER,*PEVENT_INSTANCE_HEADER; | |
| 238 | |
| 239 #define DEFINE_TRACE_MOF_FIELD(MOF,ptr,length,type) (MOF)->DataPtr = (ULONG64) ptr; (MOF)->Length = (ULONG) length; (MOF)->DataType = (ULONG) type; | |
| 240 | |
| 241 typedef struct _MOF_FIELD { | |
| 242 ULONG64 DataPtr; | |
| 243 ULONG Length; | |
| 244 ULONG DataType; | |
| 245 } MOF_FIELD,*PMOF_FIELD; | |
| 246 | |
| 247 #ifndef _NTIFS_ | |
| 248 | |
| 249 typedef struct _TRACE_LOGFILE_HEADER { | |
| 250 ULONG BufferSize; | |
| 251 __MINGW_EXTENSION union { | |
| 252 ULONG Version; | |
| 253 struct { | |
| 254 UCHAR MajorVersion; | |
| 255 UCHAR MinorVersion; | |
| 256 UCHAR SubVersion; | |
| 257 UCHAR SubMinorVersion; | |
| 258 } VersionDetail; | |
| 259 }; | |
| 260 ULONG ProviderVersion; | |
| 261 ULONG NumberOfProcessors; | |
| 262 LARGE_INTEGER EndTime; | |
| 263 ULONG TimerResolution; | |
| 264 ULONG MaximumFileSize; | |
| 265 ULONG LogFileMode; | |
| 266 ULONG BuffersWritten; | |
| 267 __MINGW_EXTENSION union { | |
| 268 GUID LogInstanceGuid; | |
| 269 __MINGW_EXTENSION struct { | |
| 270 ULONG StartBuffers; | |
| 271 ULONG PointerSize; | |
| 272 ULONG EventsLost; | |
| 273 ULONG CpuSpeedInMHz; | |
| 274 }; | |
| 275 }; | |
| 276 LPWSTR LoggerName; | |
| 277 LPWSTR LogFileName; | |
| 278 TIME_ZONE_INFORMATION TimeZone; | |
| 279 LARGE_INTEGER BootTime; | |
| 280 LARGE_INTEGER PerfFreq; | |
| 281 LARGE_INTEGER StartTime; | |
| 282 ULONG ReservedFlags; | |
| 283 ULONG BuffersLost; | |
| 284 } TRACE_LOGFILE_HEADER,*PTRACE_LOGFILE_HEADER; | |
| 285 #endif | |
| 286 | |
| 287 typedef struct EVENT_INSTANCE_INFO { | |
| 288 HANDLE RegHandle; | |
| 289 ULONG InstanceId; | |
| 290 } EVENT_INSTANCE_INFO,*PEVENT_INSTANCE_INFO; | |
| 291 | |
| 292 #ifndef _NTIFS_ | |
| 293 | |
| 294 typedef struct _EVENT_TRACE_PROPERTIES { | |
| 295 WNODE_HEADER Wnode; | |
| 296 ULONG BufferSize; | |
| 297 ULONG MinimumBuffers; | |
| 298 ULONG MaximumBuffers; | |
| 299 ULONG MaximumFileSize; | |
| 300 ULONG LogFileMode; | |
| 301 ULONG FlushTimer; | |
| 302 ULONG EnableFlags; | |
| 303 LONG AgeLimit; | |
| 304 ULONG NumberOfBuffers; | |
| 305 ULONG FreeBuffers; | |
| 306 ULONG EventsLost; | |
| 307 ULONG BuffersWritten; | |
| 308 ULONG LogBuffersLost; | |
| 309 ULONG RealTimeBuffersLost; | |
| 310 HANDLE LoggerThreadId; | |
| 311 ULONG LogFileNameOffset; | |
| 312 ULONG LoggerNameOffset; | |
| 313 } EVENT_TRACE_PROPERTIES,*PEVENT_TRACE_PROPERTIES; | |
| 314 | |
| 315 typedef struct _TRACE_GUID_PROPERTIES { | |
| 316 GUID Guid; | |
| 317 ULONG GuidType; | |
| 318 ULONG LoggerId; | |
| 319 ULONG EnableLevel; | |
| 320 ULONG EnableFlags; | |
| 321 BOOLEAN IsEnable; | |
| 322 } TRACE_GUID_PROPERTIES,*PTRACE_GUID_PROPERTIES; | |
| 323 | |
| 324 typedef struct _TRACE_GUID_REGISTRATION { | |
| 325 LPCGUID Guid; | |
| 326 HANDLE RegHandle; | |
| 327 } TRACE_GUID_REGISTRATION,*PTRACE_GUID_REGISTRATION; | |
| 328 | |
| 329 typedef struct _EVENT_TRACE { | |
| 330 EVENT_TRACE_HEADER Header; | |
| 331 ULONG InstanceId; | |
| 332 ULONG ParentInstanceId; | |
| 333 GUID ParentGuid; | |
| 334 PVOID MofData; | |
| 335 ULONG MofLength; | |
| 336 ULONG ClientContext; | |
| 337 } EVENT_TRACE,*PEVENT_TRACE; | |
| 338 | |
| 339 typedef struct _EVENT_TRACE_LOGFILEW EVENT_TRACE_LOGFILEW,*PEVENT_TRACE_LOGFILEW; | |
| 340 typedef struct _EVENT_TRACE_LOGFILEA EVENT_TRACE_LOGFILEA,*PEVENT_TRACE_LOGFILEA; | |
| 341 typedef ULONG (WINAPI *PEVENT_TRACE_BUFFER_CALLBACKW)(PEVENT_TRACE_LOGFILEW Logfile); | |
| 342 typedef ULONG (WINAPI *PEVENT_TRACE_BUFFER_CALLBACKA)(PEVENT_TRACE_LOGFILEA Logfile); | |
| 343 typedef VOID (WINAPI *PEVENT_CALLBACK)(PEVENT_TRACE pEvent); | |
| 344 typedef ULONG (WINAPI *WMIDPREQUEST)(WMIDPREQUESTCODE RequestCode,PVOID RequestContext,ULONG *BufferSize,PVOID Buffer); | |
| 345 | |
| 346 struct _EVENT_TRACE_LOGFILEW { | |
| 347 LPWSTR LogFileName; | |
| 348 LPWSTR LoggerName; | |
| 349 LONGLONG CurrentTime; | |
| 350 ULONG BuffersRead; | |
| 351 ULONG LogFileMode; | |
| 352 | |
| 353 EVENT_TRACE CurrentEvent; | |
| 354 TRACE_LOGFILE_HEADER LogfileHeader; | |
| 355 PEVENT_TRACE_BUFFER_CALLBACKW BufferCallback; | |
| 356 ULONG BufferSize; | |
| 357 ULONG Filled; | |
| 358 ULONG EventsLost; | |
| 359 PEVENT_CALLBACK EventCallback; | |
| 360 ULONG IsKernelTrace; | |
| 361 PVOID Context; | |
| 362 }; | |
| 363 | |
| 364 struct _EVENT_TRACE_LOGFILEA { | |
| 365 LPSTR LogFileName; | |
| 366 LPSTR LoggerName; | |
| 367 LONGLONG CurrentTime; | |
| 368 ULONG BuffersRead; | |
| 369 ULONG LogFileMode; | |
| 370 EVENT_TRACE CurrentEvent; | |
| 371 TRACE_LOGFILE_HEADER LogfileHeader; | |
| 372 PEVENT_TRACE_BUFFER_CALLBACKA BufferCallback; | |
| 373 ULONG BufferSize; | |
| 374 ULONG Filled; | |
| 375 ULONG EventsLost; | |
| 376 PEVENT_CALLBACK EventCallback; | |
| 377 ULONG IsKernelTrace; | |
| 378 PVOID Context; | |
| 379 }; | |
| 380 | |
| 381 #if defined(_UNICODE) || defined(UNICODE) | |
| 382 #define PEVENT_TRACE_BUFFER_CALLBACK PEVENT_TRACE_BUFFER_CALLBACKW | |
| 383 #define EVENT_TRACE_LOGFILE EVENT_TRACE_LOGFILEW | |
| 384 #define PEVENT_TRACE_LOGFILE PEVENT_TRACE_LOGFILEW | |
| 385 #define KERNEL_LOGGER_NAME KERNEL_LOGGER_NAMEW | |
| 386 #define GLOBAL_LOGGER_NAME GLOBAL_LOGGER_NAMEW | |
| 387 #define EVENT_LOGGER_NAME EVENT_LOGGER_NAMEW | |
| 388 #else | |
| 389 | |
| 390 #define PEVENT_TRACE_BUFFER_CALLBACK PEVENT_TRACE_BUFFER_CALLBACKA | |
| 391 #define EVENT_TRACE_LOGFILE EVENT_TRACE_LOGFILEA | |
| 392 #define PEVENT_TRACE_LOGFILE PEVENT_TRACE_LOGFILEA | |
| 393 #define KERNEL_LOGGER_NAME KERNEL_LOGGER_NAMEA | |
| 394 #define GLOBAL_LOGGER_NAME GLOBAL_LOGGER_NAMEA | |
| 395 #define EVENT_LOGGER_NAME EVENT_LOGGER_NAMEA | |
| 396 #endif | |
| 397 | |
| 398 #ifdef __cplusplus | |
| 399 extern "C" { | |
| 400 #endif | |
| 401 | |
| 402 EXTERN_C ULONG WMIAPI StartTraceW(PTRACEHANDLE TraceHandle,LPCWSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 403 EXTERN_C ULONG WMIAPI StartTraceA(PTRACEHANDLE TraceHandle,LPCSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 404 EXTERN_C ULONG WMIAPI StopTraceW(TRACEHANDLE TraceHandle,LPCWSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 405 EXTERN_C ULONG WMIAPI StopTraceA(TRACEHANDLE TraceHandle,LPCSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 406 EXTERN_C ULONG WMIAPI QueryTraceW(TRACEHANDLE TraceHandle,LPCWSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 407 EXTERN_C ULONG WMIAPI QueryTraceA(TRACEHANDLE TraceHandle,LPCSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 408 EXTERN_C ULONG WMIAPI UpdateTraceW(TRACEHANDLE TraceHandle,LPCWSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 409 EXTERN_C ULONG WMIAPI UpdateTraceA(TRACEHANDLE TraceHandle,LPCSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 410 EXTERN_C ULONG WMIAPI FlushTraceW(TRACEHANDLE TraceHandle,LPCWSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 411 EXTERN_C ULONG WMIAPI FlushTraceA(TRACEHANDLE TraceHandle,LPCSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties); | |
| 412 EXTERN_C ULONG WMIAPI ControlTraceW(TRACEHANDLE TraceHandle,LPCWSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties,ULONG ControlCode); | |
| 413 EXTERN_C ULONG WMIAPI ControlTraceA(TRACEHANDLE TraceHandle,LPCSTR InstanceName,PEVENT_TRACE_PROPERTIES Properties,ULONG ControlCode); | |
| 414 EXTERN_C ULONG WMIAPI QueryAllTracesW(PEVENT_TRACE_PROPERTIES *PropertyArray,ULONG PropertyArrayCount,PULONG LoggerCount); | |
| 415 EXTERN_C ULONG WMIAPI QueryAllTracesA(PEVENT_TRACE_PROPERTIES *PropertyArray,ULONG PropertyArrayCount,PULONG LoggerCount); | |
| 416 EXTERN_C ULONG WMIAPI CreateTraceInstanceId(HANDLE RegHandle,PEVENT_INSTANCE_INFO pInstInfo); | |
| 417 EXTERN_C ULONG WMIAPI EnableTrace(ULONG Enable,ULONG EnableFlag,ULONG EnableLevel,LPCGUID ControlGuid,TRACEHANDLE TraceHandle); | |
| 418 EXTERN_C ULONG WMIAPI TraceEvent(TRACEHANDLE TraceHandle,PEVENT_TRACE_HEADER EventTrace); | |
| 419 EXTERN_C ULONG WMIAPI TraceEventInstance(TRACEHANDLE TraceHandle,PEVENT_INSTANCE_HEADER EventTrace,PEVENT_INSTANCE_INFO pInstInfo,PEVENT_INSTANCE_INFO pParentInstInfo); | |
| 420 EXTERN_C ULONG WMIAPI RegisterTraceGuidsW(WMIDPREQUEST RequestAddress,PVOID RequestContext,LPCGUID ControlGuid,ULONG GuidCount,PTRACE_GUID_REGISTRATION TraceGuidReg,LPCWSTR MofImagePath,LPCWSTR MofResourceName,PTRACEHANDLE RegistrationHandle); | |
| 421 EXTERN_C ULONG WMIAPI RegisterTraceGuidsA(WMIDPREQUEST RequestAddress,PVOID RequestContext,LPCGUID ControlGuid,ULONG GuidCount,PTRACE_GUID_REGISTRATION TraceGuidReg,LPCSTR MofImagePath,LPCSTR MofResourceName,PTRACEHANDLE RegistrationHandle); | |
| 422 EXTERN_C ULONG WMIAPI EnumerateTraceGuids(PTRACE_GUID_PROPERTIES *GuidPropertiesArray,ULONG PropertyArrayCount,PULONG GuidCount); | |
| 423 EXTERN_C ULONG WMIAPI UnregisterTraceGuids(TRACEHANDLE RegistrationHandle); | |
| 424 EXTERN_C TRACEHANDLE WMIAPI GetTraceLoggerHandle(PVOID Buffer); | |
| 425 EXTERN_C UCHAR WMIAPI GetTraceEnableLevel(TRACEHANDLE TraceHandle); | |
| 426 EXTERN_C ULONG WMIAPI GetTraceEnableFlags(TRACEHANDLE TraceHandle); | |
| 427 EXTERN_C TRACEHANDLE WMIAPI OpenTraceA(PEVENT_TRACE_LOGFILEA Logfile); | |
| 428 EXTERN_C TRACEHANDLE WMIAPI OpenTraceW(PEVENT_TRACE_LOGFILEW Logfile); | |
| 429 EXTERN_C ULONG WMIAPI ProcessTrace(PTRACEHANDLE HandleArray,ULONG HandleCount,LPFILETIME StartTime,LPFILETIME EndTime); | |
| 430 EXTERN_C ULONG WMIAPI CloseTrace(TRACEHANDLE TraceHandle); | |
| 431 EXTERN_C ULONG WMIAPI SetTraceCallback(LPCGUID pGuid,PEVENT_CALLBACK EventCallback); | |
| 432 EXTERN_C ULONG WMIAPI RemoveTraceCallback (LPCGUID pGuid); | |
| 433 EXTERN_C ULONG __cdecl TraceMessage(TRACEHANDLE LoggerHandle,ULONG MessageFlags,LPGUID MessageGuid,USHORT MessageNumber,...); | |
| 434 EXTERN_C ULONG TraceMessageVa(TRACEHANDLE LoggerHandle,ULONG MessageFlags,LPGUID MessageGuid,USHORT MessageNumber,va_list MessageArgList); | |
| 435 | |
| 436 #ifdef __cplusplus | |
| 437 } | |
| 438 #endif | |
| 439 | |
| 440 #if defined(UNICODE) || defined(_UNICODE) | |
| 441 #define RegisterTraceGuids RegisterTraceGuidsW | |
| 442 #define StartTrace StartTraceW | |
| 443 #define ControlTrace ControlTraceW | |
| 444 #ifdef __TRACE_W2K_COMPATIBLE | |
| 445 #define StopTrace(a,b,c) ControlTraceW((a),(b),(c),EVENT_TRACE_CONTROL_STOP) | |
| 446 #define QueryTrace(a,b,c) ControlTraceW((a),(b),(c),EVENT_TRACE_CONTROL_QUERY) | |
| 447 #define UpdateTrace(a,b,c) ControlTraceW((a),(b),(c),EVENT_TRACE_CONTROL_UPDATE) | |
| 448 #else | |
| 449 #define StopTrace StopTraceW | |
| 450 #define QueryTrace QueryTraceW | |
| 451 #define UpdateTrace UpdateTraceW | |
| 452 #endif | |
| 453 #define FlushTrace FlushTraceW | |
| 454 #define QueryAllTraces QueryAllTracesW | |
| 455 #define OpenTrace OpenTraceW | |
| 456 #else | |
| 457 #define RegisterTraceGuids RegisterTraceGuidsA | |
| 458 #define StartTrace StartTraceA | |
| 459 #define ControlTrace ControlTraceA | |
| 460 #ifdef __TRACE_W2K_COMPATIBLE | |
| 461 #define StopTrace(a,b,c) ControlTraceA((a),(b),(c),EVENT_TRACE_CONTROL_STOP) | |
| 462 #define QueryTrace(a,b,c) ControlTraceA((a),(b),(c),EVENT_TRACE_CONTROL_QUERY) | |
| 463 #define UpdateTrace(a,b,c) ControlTraceA((a),(b),(c),EVENT_TRACE_CONTROL_UPDATE) | |
| 464 #else | |
| 465 #define StopTrace StopTraceA | |
| 466 #define QueryTrace QueryTraceA | |
| 467 #define UpdateTrace UpdateTraceA | |
| 468 #endif | |
| 469 #define FlushTrace FlushTraceA | |
| 470 #define QueryAllTraces QueryAllTracesA | |
| 471 #define OpenTrace OpenTraceA | |
| 472 #endif | |
| 473 #endif | |
| 474 #endif | |
| 475 #endif |
