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


0x5 проверки ошибок: INVALID_PROCESS_ATTACH_ATTEMPT

Проверка ошибок INVALID_PROCESS_ATTACH_ATTEMPT имеет значение 0x00000005. Обычно это означает, что поток был присоединен к процессу в ситуации, когда это не разрешено. Например, эта ошибка проверка может возникнуть, если keAttachProcess был вызван, когда поток уже был присоединен к процессу (что является недопустимым), или если поток возвращался из определенных вызовов функций в подключенном состоянии (которое является недопустимым).

Эта ошибка проверка появляется очень редко.

Важно!

Эта статья предназначена для программистов. Если вы являетесь клиентом, который получил код ошибки "синий экран" во время работы с компьютером, см. статью Устранение ошибок синего экрана.

Параметры INVALID_PROCESS_ATTACH_ATTEMPT

Параметр Описание

1

Указатель на объект диспетчера для целевого процесса или, если поток уже подключен, указатель на объект для исходного процесса.

2

Указатель на объект диспетчера процесса, к которому в данный момент присоединен текущий поток.

3

Значение индекса состояния APC потока.

4

Ненулевое значение указывает, что DPC работает на текущем процессоре.

Комментарии

Расширение отладки !analyze отображает сведения об ошибке проверка и может быть полезно для определения первопричины.

Эта ошибка проверка может возникнуть, если драйвер вызывает функцию KeAttachProcess и поток уже подключен к другому процессу. Лучше использовать функцию KeStackAttachProcess . Если текущий поток уже подключен к другому процессу, функция KeStackAttachProcess сохраняет текущее состояние APC перед присоединением текущего потока к новому процессу. Неправильный вызов KeStackAttachProcess также может вызвать эту ошибку проверка, например, если DPC работает на текущем процессоре.

Общие сведения об этой области см. в разделах Работа с windows Kernel-Mode Process and Thread Manager и Введение в объекты диспетчера ядра.