📄 ioctl.tmh
字号:
#endif
#if defined(WPP_DLL)
extern __declspec(selectany) WPP_CB_TYPE WPP_CB[WPP_LAST_CTL];
__inline void WPP_INIT_CONTROL_ARRAY(WPP_CB_TYPE* Arr) {
#define WPP_DEFINE_CONTROL_GUID(Name,Guid,Bits) \
Arr->Registration.Next = WPP_NEXT(Name); \
Arr->Registration.ControlGuid = &WPP_ ## ThisDir ## _CTLGUID_ ## Name; \
Arr->Registration.FriendlyName = L ## #Name; \
Arr->Registration.BitNames = Bits; \
Arr->Registration.FlagsLen = WPP_FLAG_LEN; \
Arr->Registration.RegBlockLen = WPP_LAST_CTL; ++Arr;
#define WPP_DEFINE_BIT(BitName) L" " L ## #BitName
WPP_CONTROL_GUIDS
#undef WPP_DEFINE_BIT
#undef WPP_DEFINE_CONTROL_GUID
}
#define WPP_INIT_STATIC_DATA WPP_INIT_CONTROL_ARRAY(WPP_CB)
#else
extern __declspec(selectany) WPP_CB_TYPE WPP_CB[WPP_LAST_CTL] = {
#define WPP_DEFINE_CONTROL_GUID(Name,Guid,Bits) {{WPPKM_NULL WPP_NEXT(Name), \
&WPP_ ## ThisDir ## _CTLGUID_ ## Name, L ## #Name, Bits, WPPKM_NULL WPP_FLAG_LEN, WPP_LAST_CTL}},
#define WPP_DEFINE_BIT(BitName) L" " L ## #BitName
WPP_CONTROL_GUIDS
#undef WPP_DEFINE_BIT
#undef WPP_DEFINE_CONTROL_GUID
};
#define WPP_INIT_STATIC_DATA 0
#endif
#define WPP_CONTROL(CTL) (WPP_CB[WPP_CTRL_NO(CTL)].Control)
#define WPP_REGISTRATION(CTL) (WPP_CB[WPP_CTRL_NO(CTL)].Registration)
#define WPP_SET_FORWARD_PTR(CTL, FLAGS, PTR) (\
(WPP_REGISTRATION(WPP_BIT_ ## CTL ).Options = (FLAGS)),\
(WPP_REGISTRATION(WPP_BIT_ ## CTL ).Ptr = (PTR)) )
#if !defined(WPP_LEVEL_LOGGER)
# define WPP_LEVEL_LOGGER(CTL) (WPP_CONTROL(WPP_BIT_ ## CTL).Logger),
#endif
#if !defined(WPP_LEVEL_ENABLED)
# define WPP_LEVEL_ENABLED(CTL) (WPP_CONTROL(WPP_BIT_ ## CTL).Flags[WPP_FLAG_NO(WPP_BIT_ ## CTL)] & WPP_MASK(WPP_BIT_ ## CTL))
#endif
#if !defined(WPP_LOGGER_ARG)
# define WPP_LOGGER_ARG TRACEHANDLE Logger,
#endif
#if !defined(WPP_GET_LOGGER)
# define WPP_GET_LOGGER Logger
#endif
#ifndef WPP_ENABLED
# define WPP_ENABLED() 1
#endif
#ifndef WPP_LOGGER
# define WPP_LOGGER() (WPP_CB[0].Control.Logger),
#endif
#endif // WPP_NO_CONTROL_GUIDS
#if !defined(WPP_KERNEL_MODE)
#if defined(__cplusplus)
extern "C" {
#endif
VOID WppInitUm(LPCWSTR AppName, PWPP_REGISTRATION_BLOCK Registration);
VOID WppCleanupUm(PWPP_REGISTRATION_BLOCK Registration);
#if defined(__cplusplus)
};
#endif
# define WPP_INIT_TRACING(AppName) (WPP_CONTROL_ANNOTATION(),WPP_INIT_STATIC_DATA,\
WppInitUm(AppName, &WPP_CB[0].Registration))
# define WPP_CLEANUP() WppCleanupUm(&WPP_CB[0].Registration)
#else
#if defined(__cplusplus)
extern "C" {
#endif
VOID WppInitKm(PUNICODE_STRING RegistryPath, PWPP_REGISTRATION_BLOCK Registration);
VOID WppCleanupKm(PWPP_REGISTRATION_BLOCK Registration);
#if defined(__cplusplus)
};
#endif
# define WPP_INIT_TRACING(DrvObj, RegPath) (WPP_CONTROL_ANNOTATION(),WPP_INIT_STATIC_DATA,\
WppInitKm(RegPath, &WPP_CB[0].Registration))
# define WPP_CLEANUP(DrvObj) WppCleanupKm(&WPP_CB[0].Registration)
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -