Функция CmRegisterCallbackEx (wdm.h)
Подпрограмма CmRegisterCallbackEx регистрирует подпрограмму RegistryCallback .
Синтаксис
NTSTATUS CmRegisterCallbackEx(
[in] PEX_CALLBACK_FUNCTION Function,
[in] PCUNICODE_STRING Altitude,
[in] PVOID Driver,
[in, optional] PVOID Context,
[out] PLARGE_INTEGER Cookie,
PVOID Reserved
);
Параметры
[in] Function
Указатель на подпрограмму RegistryCallback для регистрации.
[in] Altitude
Указатель на структуру UNICODE_STRING . Эта структура должна содержать строку, представляющую высоту вызывающего драйвера минифильтра. Дополнительные сведения см. в подразделе "Примечания".
[in] Driver
Указатель на структуру DRIVER_OBJECT , представляющую драйвер.
[in, optional] Context
Определенное драйвером значение, которое диспетчер конфигурации будет передавать в качестве параметра CallbackContext в подпрограмму RegistryCallback .
[out] Cookie
Указатель на переменную LARGE_INTEGER, получающую значение, идентифицирующее подпрограмму обратного вызова. При отмене регистрации процедуры обратного вызова передайте это значение в качестве параметра Cookieв CmUnRegisterCallback.
Reserved
Этот параметр зарезервирован для использования в будущем.
Возвращаемое значение
CmRegisterCallbackEx возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае эта подпрограмма может вернуть одно из следующих значений NTSTATUS :
Код возврата | Описание |
---|---|
|
Вызывающий или другой драйвер уже зарегистрировал подпрограмму RegistryCallback для указанной высоты. |
|
Сбой при попытке выделения памяти. |
Комментарии
Подпрограмма CmRegisterCallbackEx доступна, начиная с Windows Vista.
Драйвер может вызвать CmRegisterCallback или CmRegisterCallbackEx для регистрации подпрограммы RegistryCallback , которая вызывается каждый раз, когда поток выполняет операцию с реестром.
Параметр Altitude определяет положение драйвера минифильтра относительно других минифильтров в стеке ввода-вывода при загрузке минифильтра. Распределение высот для минифильтров управляется корпорацией Майкрософт. Дополнительные сведения о высотах см. в разделе Load Order Groups and Altitudes for Minifilter Drivers.
Вызовите CmUnRegisterCallback , чтобы отменить регистрацию процедуры обратного вызова, зарегистрированной CmRegisterCallbackEx .
Дополнительные сведения о cmRegisterCallbackEx и фильтрации операций реестра см. в разделе Фильтрация вызовов реестра.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно начиная с Windows Vista. |
Целевая платформа | Универсальное |
Верхняя часть | wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <=APC_LEVEL |
Правила соответствия DDI | HwStorPortProhibitedDIs(storport), IrqlExApcLte2(wdm) |