Разделы справки уведомлять драйвер при включении, отключении или изменении определенных флагов?
Некоторые драйверы должны выполнять дополнительные действия при включении, отключении или изменении флагов трассировки. Чтобы уведомить драйвер о таких изменениях, используйте следующую команду:
#define WPP_PRIVATE_ENABLE_CALLBACK
Эта символьная константа должна быть определена перед включением файла TMH. Сигнатура функции, которую необходимо написать, выглядит следующим образом:
typedef
VOID
(*PFN_WPP_PRIVATE_ENABLE_CALLBACK)(
__in LPCGUID Guid,
__in __int64 Logger,
__in BOOLEAN Enable,
__in ULONG Flags,
__in UCHAR Level);
Ниже приведен пример уведомления драйвера при включении определенных флагов.
#define WPP_PRIVATE_ENABLE_CALLBACK MyOwnCallback
#include "tracedrv.tmh" // this is the file that will be auto-generated
VOID MyOwnCallback (
__in LPCGUID Guid,
__in __int64 Logger,
__in BOOLEAN Enable,
__in ULONG Flags,
__in UCHAR Level)
{
//
// This callback function will be called with the current values of : GUID, Logger, Enable, Flags, and Level
//
if (Enable) {
.
.
}
}