Всем привет! Сегодня будет небольшая заметка по ошибке которая выскакивает при запуске приложения, которое вы только что скачали с интернета и поставили, но при запуске его вы видите ошибку которая звучит так:
или если дословно, то:
Инструкция по адресу 0x0 *** обратилась к памяти по адресу 0x0 ***. Память не может быть read (write)»
В моем случае это была игра battlefield 3 которую скачали с торрента и пытались запустить на windows 7, но при каждом запуске пользователь не рубился с врагами на поле боя, а шерстил интернет в поисках проблемы!
Уже с windows 7 была добавлена новая защита под названием Data Execution Prevention или сокращённо DEP.
DEP — это технология которая имеет набор инструкций которые предотвращают запуск «плохого» программного кода для исполнения.
И если у вас вылетела ошибка с текстом — «Инструкция по адресу обратилась к памяти по адресу» это на 99% может означать, что вы запускаете опасное приложение! НО бывают и такие ситуации когда в результате конфликта системных библиотек или приложений у вас приложение которое работало перестало запускать, тогда для решения этих проблем воспользуйтесь одной из инструкций ниже.
Все варианты я буду описывать так, что надо начинать с первого варианта.
1 Вариант
Отключите все антивирусы и запустите приложение заново
2 Вариант
Если это приложение или игра, то у нее наверняка есть сайт, где можно скачать обновленную версию, даже если вы скачали с торрента.
3 Вариант
Обновите до последней версии ваш Windows (если у вас пиратская windows, то скачайте архив автономных обновлений) В большинстве случаев это помогает!
4 Вариант
Если после отключения всех защит и обновления программ и windows ошибка до сих пор вылетает, тогда необходимо воспользоваться стандартной утилитой которая починит и восстановит системные файлы вашей windows
5 Вариант
Мы подошли к варианту когда уже было сделано все возможное и для того что бы убедиться, что запуск программы блокируется не на уровне защиты windows мы отключим DEP
Отключаем DEP через командную строку
Сразу говорю, что последствия могут быть необратимыми!!
- Запускаем консоль cmd от имени Администратора
- вводим команду
bcdedit.exe /set {current} nx AlwaysOff
- На мониторе должно быть написано — Операция успешно завершена
Отключаем DEP вручную
Кто не доверяет консолям, то вот вариант как это сделать вручную.
- Заходим в систему
- Выбираем Дополнительные параметры системы
- В открывшемся окне в блоке Быстродействие нажимаем на кнопку Параметры
- Далее переходим на вкладку Предотвращение выполнения данных
- Переключаете переключатель на — Отключить DEP для всех программ и служб, кроме выбранных ниже.
- Перезагружаем компьютер
Если Вам не помог не один из способов, пишите в комментарии или мне на почту, будем разбираться.
PS
А в моем случае ошибка которая вылетала при запуске игры была устранена обновлением в лаунчера игры (это второй способ по соей инструкции)
возникшая проблема привела к прекращению работы программы. windows закроет эту программу, а если есть известный спосбо устранения проблемы, уведомит вас об этом.
такая проблема на windows xp, dep отключена.сможете помочь?