Чтобы сделать это из режима ядра, вам нужно написать драйвер, который регистрирует обратный вызов с помощью Configuration Manager (этот модуль обрабатывает весь доступ к реестру из пользовательского режима и режима ядра). После того, как обратный вызов успешно зарегистрирован. Вызов функции реестра из пользовательского режима (RegXXX) и режима ядра (ZwRegXX) перейдет к CM, который inturn вызывает ваш обратный вызов, если вы зарегистрировались для этой конкретной функции. Ваши обратные вызовы могут быть зарегистрированы как функция Pre и Post для различных операций регистрации (создание, открытие, чтение, запись и т. Д.).
Проверьте http://msdn.microsoft.com/en-us/library/ff545879(v=VS.85).aspx для получения дополнительной информации