Поделиться через


структура OB_OPERATION_REGISTRATION (wdm.h)

Структура OB_OPERATION_REGISTRATION определяет подпрограммы обратного вызова ObjectPreCallback и ObjectPostCallback , а также типы операций, для которых вызываются подпрограммы.

Синтаксис

typedef struct _OB_OPERATION_REGISTRATION {
  POBJECT_TYPE                *ObjectType;
  OB_OPERATION                Operations;
  POB_PRE_OPERATION_CALLBACK  PreOperation;
  POB_POST_OPERATION_CALLBACK PostOperation;
} OB_OPERATION_REGISTRATION, *POB_OPERATION_REGISTRATION;

Члены

ObjectType

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

  • PsProcessType для операций дескриптора процесса
  • PsThreadType для операций дескриптора потоков
  • ExDesktopObjectType для операций дескриптора рабочего стола. Это значение поддерживается в Windows 10, а не в более ранних версиях операционной системы.

Operations

Укажите один или несколько следующих флагов:

OB_OPERATION_HANDLE_CREATE

Был или будет открыт новый процесс, поток или дескриптор рабочего стола.

OB_OPERATION_HANDLE_DUPLICATE

Процесс, поток или дескриптор рабочего стола был или будет дублироваться.

PreOperation

Указатель на подпрограмму ObjectPreCallback . Система вызывает эту подпрограмму до выполнения запрошенной операции.

PostOperation

Указатель на подпрограмму ObjectPostCallback . Система вызывает эту подпрограмму после выполнения запрошенной операции.

Комментарии

Эта структура используется подпрограммой ObRegisterCallbacks . Параметр CallBackRegistration для этой подпрограммы является указателем на буфер, содержащий структуру OB_CALLBACK_REGISTRATION , за которой следует массив из одной или нескольких OB_OPERATION_REGISTRATION структур.

В каждой OB_OPERATION_REGISTRATION структуре, передаваемой в ObRegisterCallback, вызывающий объект должен предоставить одну или обе подпрограммы обратного вызова. Если элементы PreOperation и PostOperation этой структуры имеют значение NULL, операция регистрации обратного вызова завершается ошибкой.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows Server 2008.
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)

См. также раздел

OB_CALLBACK_REGISTRATION

ObRegisterCallbacks

ObjectPostCallback

ObjectPreCallback