Что означает код HRESULT 0x801F000D (ERROR_FLT_DUPLICATE_ENTRY)?

 
Предыдущий Следующий
ERROR_FLT_MUST_BE_NONPAGED_POOL ERROR_FLT_CBDQ_DISABLED

ERROR_FLT_DUPLICATE_ENTRY

Что означает ERROR_FLT_DUPLICATE_ENTRY

ERROR_FLT_DUPLICATE_ENTRY (0x801F000D) — Для операции повторно определён обработчик.

Код 0x801F000D относится не ко всему компоненту «Filter Manager», а к операции в области «регистрацию minifilter, instances, contexts и I/O callbacks». Сообщение «для операции повторно определён обработчик» позволяет начать с темы «flt, дубликат, entry».

Что проверить и как подтвердить исправление

Не начинайте с общего сброса компонента: сопоставьте первый отказ с фактическими параметрами операции. При 0x801F000D и условии «для операции повторно определён обработчик» установите идентичность и владельца уже существующего объекта; не создавайте второй экземпляр, пока не проверен жизненный цикл первого.

Перед повтором 0x801F000D зафиксируйте имя фильтра и altitude, volume/instance, тип context, major function, callback phase и журнал FilterManager; отдельно запишите IRP_MJ_OPERATION_END. Различия по теме «flt, дубликат, entry» для 0x801F000D покажут, изменился ли первый неуспешный этап.

Исправляя 0x801F000D, меняйте только подтверждённую причину: соблюдайте порядок регистрации и удаления, тип и владельца контекста, IRQL и допустимость операции в pre/post callback. Результат 0x801F000D с описанием «для операции повторно определён обработчик» должен исчезнуть на исходных данных без обхода штатной проверки.

Считайте исправление подтверждённым только после устойчивого повтора исходного сценария без результата 0x801F000D и без обхода штатных проверок.

Документация для результата 0x801F000D: operation registration array format · minifilter registration validation · Microsoft Open Specifications: STATUS_FLT_DUPLICATE_ENTRY.


Нужно найти другой код? Найти другой код состояния или ошибки.