1 /*++ 2 3 Copyright (c) Microsoft Corporation 4 5 Module Name: 6 7 FxWmiCompat.hpp 8 9 Abstract: 10 11 Undefines WMI ntos exports used by WPP and redirects them to our own 12 functions so that we can build User and Kernel libraries. 13 14 Author: 15 16 17 18 Environment: 19 20 Both kernel and user mode 21 22 Revision History: 23 24 --*/ 25 26 #ifndef __FX_WMI_COMPAT_H__ 27 #define __FX_WMI_COMPAT_H__ 28 29 #include <evntrace.h> 30 31 #ifdef WPP_TRACE 32 #undef WPP_TRACE 33 #endif 34 35 #define WPP_TRACE FxWmiTraceMessage 36 37 extern "C" 38 _Must_inspect_result_ 39 NTSTATUS 40 FxWmiTraceMessage( 41 __in TRACEHANDLE LoggerHandle, 42 __in ULONG MessageFlags, 43 __in LPGUID MessageGuid, 44 __in USHORT MessageNumber, 45 ... 46 ); 47 48 #define WPP_IFR FxIFR 49 50 extern "C" 51 _Must_inspect_result_ 52 NTSTATUS 53 FxIFR( 54 __in PFX_DRIVER_GLOBALS FxDriverGlobals, 55 __in UCHAR MessageLevel, 56 __in ULONG MessageFlags, 57 __in LPGUID MessageGuid, 58 __in USHORT MessageNumber, 59 ... 60 ); 61 62 #if ((FX_CORE_MODE)==(FX_CORE_USER_MODE)) 63 #undef WmiQueryTraceInformation 64 #define WmiQueryTraceInformation FxWmiQueryTraceInformation 65 66 extern "C" 67 _Must_inspect_result_ 68 NTSTATUS 69 FxWmiQueryTraceInformation( 70 __in TRACE_INFORMATION_CLASS TraceInformationClass, 71 __out_bcount(TraceInformationLength) PVOID TraceInformation, 72 __in ULONG TraceInformationLength, 73 __out_opt PULONG RequiredLength, 74 __in_opt PVOID Buffer 75 ); 76 77 #endif 78 79 #endif __FX_WMI_COMPAT_H__ 80