Структура FILTEROBJECT

Структура FILTEROBJECT определяет один объект фильтра отображения. Функция FilterAddObject использует FILTEROBJECT для создания фильтра отображения.

Синтаксис

typedef struct _FILTEROBJECT {
  FILTERACTIONTYPE     Action;
  HPROPERTY            hProperty;
  union {
    VALUETYPE           Value;
    HPROTOCOL           hProtocol;
    LPVOID              lpArray;
    LPPROTOCOLTABLETYPE lpProtocolTable;
    LPADDRESS           lpAddress;
    ULPLARGEINT         lpLargeInt;
    ULPTIME             lpTime;
    LPOBJECT_IDENTIFIER lpOID;
  };
  union {
    WORD ByteCount;
    WORD ByteOffset;
  };
  struct _FILTEROBJECT  *pNext;
} FILTEROBJECT, *LPFILTEROBJECT;

Члены

Действие

Флаг, указывающий действие FILTEROBJECT . Флаг может указывать свойство, значение или оператор.

В следующей таблице перечислены флаги свойств элемента действия.

Значение Значение
FILTERACTION_PROPERTY
Содержит это свойство.
FILTERACTION_PROPERTYEXIST
Указывает, что свойство действия фильтра уже определено.

В следующей таблице перечислены флаги значений элемента действия.

Значение Значение
FILTERACTION_VALUE
Содержит это значение.
FILTERACTION_STRING
Содержит эту строку.
FILTERACTION_ARRAY
Содержит этот массив.
FILTERACTION_CONTAINSNC
Указывает, что свойство содержит подстроку без учета регистра.
FILTERACTION_CONTAINS
Указывает, что свойство содержит подстроку с учетом регистра.
FILTERACTION_ADDRESS
Содержит MAC-адрес.
FILTERACTION_ADDRESSANY
Соответствует любому MAC-адресу.
FILTERACTION_FROM
Указывает MAC-адрес from .
FILTERACTION_TO
Указывает MAC-адрес to .
FILTERACTION_FROMTO
Указывает на связывание MAC-адресов "От/До ".
FILTERACTION_LARGEINT
Содержит большое целое число.
FILTERACTION_TIME
Содержит структуру SYSTEMTIME .
FILTERACTION_ADDR_ETHER
Содержит MAC-адрес Ethernet.
FILTERACTION_ADDR_TOKEN
Содержит MAC-адрес круга маркеров.
FILTERACTION_ADDR_FDDI
Содержит MAC-адрес FDDI.
FILTERACTION_ADDR_IPX
Содержит MAC-адрес IPX.
FILTERACTION_ADDR_IP
Содержит IP-MAC-адрес.
FILTERACTION_OID
Содержит идентификатор объекта (OID).

В следующей таблице перечислены флаги операторов-членов action.

Значение Значение
FILTERACTION_INVALID
Указывает на недопустимое действие фильтра.
FILTERACTION_AND
Указывает логическую инструкцию AND .
FILTERACTION_OR
Указывает логическую инструкцию OR .
FILTERACTION_XOR
Указывает оператор логического исключающего ИЛИ (XOR).
FILTERACTION_NOT
Указывает логическую инструкцию NOT .
FILTERACTION_EQUALNC
Действие фильтра равно и не учитывает регистр.
FILTERACTION_EQUAL
Действие фильтра равно и учитывает регистр.
FILTERACTION_NOTEQUALNC
Оператор Logical NOT равен и не учитывает регистр.
FILTERACTION_NOTEQUAL
Оператор Logical NOT равен и учитывает регистр.
FILTERACTION_GREATERNC
Действие фильтра больше (>), а регистр не учитывается.
FILTERACTION_GREATER
Действие фильтра больше (>) и учитывает регистр.
FILTERACTION_LESSNC
Действие фильтра меньше (<), и регистр не учитывается.
FILTERACTION_LESS
Действие фильтра меньше (<) и учитывает регистр.
FILTERACTION_GREATEREQUALNC
Действие фильтра больше или равно (>=), а регистр не учитывается.
FILTERACTION_GREATEREQUAL
Действие фильтра больше или равно (>=) и учитывает регистр.
FILTERACTION_LESSEQUALNC
Действие фильтра меньше или равно (<=), а регистр не учитывается.
FILTERACTION_LESSEQUAL
Действие фильтра меньше или равно (<=) и учитывает регистр.
FILTERACTION_PLUS
Добавление оператора (+).
FILTERACTION_MINUS
Оператор вычитания (-).
FILTERACTION_AREBITSON
Указывает на побитовую операцию.
FILTERACTION_AREBITSOFF
Указывает на небитовую операцию.
FILTERACTION_PROTOCOLSEXIST
Указывает, что выбранные протоколы существуют.
FILTERACTION_PROTOCOLEXIST
Указывает, что выбранный протокол существует.
FILTERACTION_ARRAYEQUAL
Указывает, что содержимое массива равно. Флаг должен использоваться со структурой FILTERACTION_ARRAY .
FILTERACTION_DEREFPROPERTY
Описывает соответствие шаблона со смещением (в байтах) от протокола.
FILTERACTION_OID_CONTAINS
Вычисляет подстроку в идентификаторе объекта. Действие должно использоваться со структурой FILTERACTION_OID .
FILTERACTION_OID_BEGINS_WITH
Вычисляет подстроку, которая начинает идентификатор объекта. Флаг должен использоваться с FILTERACTION_OID.
FILTERACTION_OID_ENDS_WITH
Вычисляет подстроку, завершающую идентификатор объекта. Флаг должен использоваться с FILTERACTION_OID.
FILTERACTION_ADDR_VINES
Содержит MAC-адрес Vines.
FILTERACTION_EXPRESSION
Содержит выражение действия.
FILTERACTION_BOOL
Содержит тип данных BOOL .
FILTER_DIRECTION_NEXT
Управляет последовательным направлением (следующий кадр) в файле захвата.
FILTER_DIRECTION_PREV
Управляет последовательным направлением (предыдущий кадр) в файле захвата.

hProperty

Дескриптор ключа свойства.

Значение

Значение объекта .

hProtocol

Дескриптор для отображения протокола фильтра.

lpArray

Указатель на массив.

lpProtocolTable

Указатель на список протоколов, предназначенный для проверки существования протокола в кадре.

lpAddress

Указатель на адрес типа ядра. Например, MAC или IP-адрес.

lpLargeInt

Двойное значение DWORD, используемое в приложении Windows NT или Windows 2000.

lpTime

Указатель на структуру SYSTEMTIME .

lpOID

Указатель на структуру OBJECT_IDENTIFIER (OID).

ByteCount

Число в байтах в кадре.

ByteOffset

Байтовое значение смещения структуры FILTEROBJECT, используемой для сравнения массивов.

pДалее

Зарезервировано.

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Netmon.h