22.09.2009
При работе на компьютере с установленной Windows XP (да и с любой другой версией Windows) при запуске некоторых приложений может появиться ошибка следующего вида:
"Инструкция по адресу "0x7e911ec3" (или другая) обратилась к памяти по адресу "0х000000" память не может быть "written" или "read".
Причинной данной ошибки является функция - "Предотвращение выполнения данных" (DEP).
Данная ошибка возникает при обращении какой-либо программы или модуля программы напрямую к закрытому участку памяти.
Предотвращение выполнения данных (Data Execution Prevention, DEP) – это набор программных и аппаратных технологий, позволяющих выполнять дополнительные проверки содержимого памяти и предотвращать запуск вредоносного кода.
Основным преимуществом функции DEP является возможность предотвращения запуска вредоносного кода из области данных. При аппаратной реализации функция DEP вызывает исключение при запуске кода из указанных местоположений. Функция DEP, реализованная на программном уровне, предотвращает использование вредоносными программами механизма обработки исключений, существующего в Windows. То есть в отличие от брандмауэра или антивирусного программного обеспечения функция DEP не препятствует установке потенциально опасных программ на компьютер, а только следит за тем, как программы используют память, и после установки SP2, DEP по умолчанию включена для основных программ и служб Windows."
Существует четыре варианта настройки функции DEP:
- OptIn - (установлено по умолчанию). В этой конфигурации под действие функции DEP подпадают только основные системные программы и службы.
- OptOut - DEP включена для всех процессов и приложений, кроме тех, которые вручную добавлены пользователем в список исключений.
- AlwaysOn - В этом режиме DEP включена всегда для системы в целом, всех процессов и приложений, не взирая на установки пользователя или производителя ПО.
- AlwaysOff - DEP полностью отключена.
Если какая-то программа вызывает срабатывание этой функции, Microsoft рекомендует выбрать режим OptOut и добавить эту программу в список исключений. Но этот вариант не удобен, потому, что не всегда имеется возможность точно определить, какая именно программа вызывает срабатывание DEP.
Если программа не работает, а внесение её в список исключений не помог, то проще отключить DEP целиком, отредактировав скрытый файл boot.ini, который находится в корне загрузочного раздела диска.
То есть для полного отключения DEP, вы должны отредактировать файл boot.ini и в итоге получится следующее:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional SP2" /noexecute=AlwaysOff /fastdetect
|