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


Функция ObRegisterCallbacks (wdm.h)

Подпрограмма ObRegisterCallbacks регистрирует список подпрограмм обратного вызова для операций обработки потоков, процессов и дескрипторов рабочего стола.

Синтаксис

NTSTATUS ObRegisterCallbacks(
  [in]  POB_CALLBACK_REGISTRATION CallbackRegistration,
  [out] PVOID                     *RegistrationHandle
);

Параметры

[in] CallbackRegistration

Указатель на структуру OB_CALLBACK_REGISTRATION , указывающую список процедур обратного вызова и другие сведения о регистрации.

[out] RegistrationHandle

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

Возвращаемое значение

ObRegisterCallbacks возвращает значение NTSTATUS. Эта подпрограмма может возвращать одно из следующих значений:

Код возврата Описание
STATUS_SUCCESS
Указанные подпрограммы обратного вызова регистрируются в системе.
STATUS_FLT_INSTANCE_ALTITUDE_COLLISION
Вызывающий или другой драйвер уже зарегистрировал процедуры обратного вызова для высоты, указанной callBackRegistration->Altitude . Дополнительные сведения об этой высоте см. в описании элемента Высота в OB_CALLBACK_REGISTRATION.
STATUS_INVALID_PARAMETER
Один или несколько параметров, указанных в регистрации, были недопустимыми. ObRegisterCallbacks может возвращать эту ошибку, например, если указано недопустимое значение для CallBackRegistration->Version или если предпринята попытка регистрации для типов объектов, которые не поддерживают подпрограммы обратного вызова.
STATUS_ACCESS_DENIED
Подпрограммы обратного вызова не находятся в двоичном образе подписанного ядра.
STATUS_INSUFFICIENT_RESOURCES
Сбой при попытке выделения памяти.

Комментарии

Перед выгрузкой драйвер должен отменить регистрацию всех процедур обратного вызова. Вы можете отменить регистрацию процедуры обратного вызова, вызвав подпрограмму ObUnRegisterCallbacks .

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows Vista с пакетом обновления 1 (SP1) и Windows Server 2008.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

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

OB_CALLBACK_REGISTRATION

ObUnRegisterCallbacks