Возникло несколько вопросов по поводу CmRegisterCallback 1) Судя по виду нет возможности легально проверить какие CallBack функции были добавлены через CmRegisterCallback. А также нет возможности убрать эти CallBack не зная 64 числа даваемого при регистрации. т.е. чтобы обнаружить такой перехват или снять его надо вручную находить адреса переменных CmpCallBackCount и CmpCallBackVector. И нет никаких других (легальных) возможностей для этого. Или я ошибаюсь? 2) Допустим я делаю мониторинг RegNtSetValueKey. Могу ли я в CallBack функции подменять значения ValueName? 3) Мониторинг реестра захватывает запросы тока из юзермода или также их ядра? т.е. важен следующий момент: Если я в CallBack функции мониторю RegNtSetValueKey и в этом обработчике выполню ZwSetValueKey то он опять вызовет эту CallBack функцию или же пройдет стороной?