Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция PktMonClntComponentRegister регистрирует компонент с помощью монитора пакетов, позволяя ему отслеживать и сообщать о действиях пакета.
Синтаксис
NTSTATUS PktMonClntComponentRegister(
PKTMON_COMPONENT_CONTEXT *CompContext,
PCUNICODE_STRING Name,
PCUNICODE_STRING Description,
PKTMON_COMPONENT_TYPE Type,
PKTMON_PACKET_TYPE PacketType
);
Параметры
CompContext
Указатель на PKTMON_COMPONENT_CONTEXT , который содержит контекст для компонента. Ноль инициализация этой структуры перед вызовом PktMonClntComponentRegister, которая заполняет структуру.
Name
Имя компонента монитора пакетов.
Description
Описание компонента монитора пакетов.
Type
Тип, связанный с этим компонентом. Это должно быть одно из значений, определенных в перечислении PKTMON_COMPONENT_TYPE .
PacketType
Тип пакета, с которым работает этот клиент. Это должно быть одно из значений, определенных в перечислении PKTMON_PACKET_TYPE .
Возвращаемое значение
Если функция успешно выполнена, она возвращается STATUS_SUCCESS. В противном случае возвращается NTSTATUS код ошибки.
Замечания
Если компонент больше не нужен, приложение PktMonClnt должно вызвать PktMonClntComponentUnregister , чтобы отменить регистрацию из монитора пакетов и освободить все связанные ресурсы.
Требования
| Требование | Ценность |
|---|---|
| Заголовок | pktmonclntk.h |
См. также
Пример
PKTMON_COMPONENT_CONTEXT PktMonComp = { 0 };
NTSTATUS
PktMonApiTstRegisterComponent(VOID)
{
NTSTATUS status = STATUS_SUCCESS;
DECLARE_CONST_UNICODE_STRING(DriverName, L"pktmonapitst.sys");
DECLARE_CONST_UNICODE_STRING(Description, L"Sample driver to report packet drops to pktmon.sys");
status = PktMonClntComponentRegister(
&PktMonComp,
&DriverName,
&Description,
PktMonComp_IpInterface,
PktMonPayload_IP);
if (!NT_SUCCESS(status)) {
// Log error
}
return status;
}