Меню Закрыть

0X00007ff обратилась к памяти по адресу

Содержание

Некоторые пользователи могут столкнуться с внезапно появившимся на экране сообщением «Инструкция по адресу *XXX* обратилась к памяти по адресу *XXX*. Память не может быть «read»». Вместо XXX в данном сообщении обычно располагается совокупность каких-либо чисел и букв, ничего не говорящая пользователю. В данном материале я поясню, в чём суть данной дисфункции, и как её исправить.

Шаблонное сообщение об ошибке

«Память не может быть read» – специфика дисфункции

Как следует из текста упомянутого сообщения, оно сигнализирует о наличии проблем с памятью, информация с которой не может быть считана по определённым причинам. Обычно это связано с ситуацией, при которой какое-либо приложение попыталось прочесть информацию, находящуюся в определённой странице памяти, не вышло этого выполнить, вследствие чего пользователь получил сообщение о возникшей ошибке.

Причины, по которым некая страница памяти оказалась заблокированной для нужного приложения, могут быть довольно различными. Это может быть некорректная работа планок памяти, устаревшие драйвера к системным устройствам, недостаточный объём файла подкачки, аппаратный конфликт устройств, нарушение целостности системных файлов, «осыпание» винчестера, множество других релевантных факторов.

Исправляем возникшие ошибки при работе с памятью ПК

Как исправить ошибку Инструкция по адресу * обратилась к памяти по адресу *. Память не может быть «read»

Для исправления дисфункции существует несколько эффективных решений, ниже я разберу каждое из них.

Способ №1. Увеличьте объём виртуальной памяти

Часто встречающейся причиной рассматриваемой дисфункции является недостаточный объём файла подкачки (виртуальной памяти).

  1. Для увеличения данного объёма нажмите на кнопку «Пуск», в строке поиска введите sysdm.cpl, и нажмите ввод.
  2. Перейдите во вкладку «Дополнительно», рядом с опцией «Быстродействие» нажмите на «Параметры».
  3. Далее выберите вкладку «Дополнительно», и рядом с параметром «Виртуальная память» нажмите на «Изменить».

Нажмите на «Изменить» для смены параметров

  • В открывшемся окне виртуальной памяти снимите галочку с опции «Автоматически выбирать объём файла подкачки».
  • Затем активируйте опцию «Указать размер», и установите объём файла подкачки вдвое больший, нежели установлено памяти на вашем ПК (к примеру, если у вас 2048, то установите исходный и максимальный размер файла подкачки на 4096). З
  • После этого нажмите на «Задать» — «Ок», и перезагрузите ваш ПК.
  • Нажмите на «Задать», а потом на «ОК»

    Пример:

    У одного из пользователей во время работы одной игровой программы появилось сообщение «Инструкция по адресу «0x18797ca7» обратилась к памяти по адресу «0x000000». память не может быть «read»». После применения различных способов борьбы с ошибкой пользователь вдвое увеличил файл подкачки, после чего проблема была решена.

    Способ №2. Деинсталлируйте нестабильно работающие программы

    Если проблема возникла после установки какой-либо внешней программы, то есть вероятность, что данная программа работает нестабильно. Попробуйте поискать альтернативную версию данной программы (к примеру, репак другого автора), и установить её взамен проблемного софта. Если же мы имеем делом с программой-антивирусом или программой-брандмауэром, то попробуйте на время отключить указанный софт, дабы убедиться, что он не является катализатором возникновения проблемы.

    Читайте также:  Мнение людей об интернете

    Также стоит временно отключить недавно установленные расширения и дополнения для вашего браузера, так как их некорректная работа может вызывать различные проблемы при работе с памятью ПК.

    Способ №3. Обновите драйвера к вашим устройствам, установите обновления для вашей ОС

    Устаревшие драйвера к аппаратным компонентам системы, как и отсутствие необходимых обновлений для ОС Виндовс, может являться причиной возникновения рассматриваемой проблемы. Установите на вашу ОС все необходимые ей свежие обновления, а для аппаратных составляющих – все свежие драйвера. В установке последних могут помочь такие специальные программы для обновления драйверов уровня «DriverPack Solution»и других аналогов.

    Используйте специализированный софт для обновления драйверов

    Способ №4. Выполните откат системы на стабильную раннюю точку

    Довольно действенным способом борьбы с данной проблемой является откат системы на стабильную точку восстановления, при которой упомянутых проблем не наблюдалось.

    1. Для осуществления данной операции нажмите на кнопку «Пуск», в строке поиска введите rstrui, и нажмите ввод.
    2. Выберите стабильную точку восстановления, и откатите систему на указанное состояние.

    Осуществите откат вашей системы

    Способ №5. Выполните проверку целостности системных файлов.

    В случае, если некоторые системные файлы повреждены, у системы могут возникать проблемы при работе с памятью. Для проверки целостности системных файлов рекомендую использовать функционал утилиты sfc, для чего запустите командную строку от имени администратора, в ней введите:

    sfc /scannow

    И нажмите ввод. Дождитесь окончания процедуры, а затем перезагрузите компьютер.

    Способ №6. Отключите функцию предотвращения выполнения данных (DEP)

    Системная функция DEP (от Dáta Execútion Prevéntion – предотвращение выполнения данных), имеющаяся в ОС Виндовс, призвана препятствовать приложениям в выполнении кода, расположенного в «закрытых» областях памяти. При отключении данной функции она перестанет мешать упомянутым приложениям, что в ряде случаев поможет избежать ошибки «Инструкция по адресу * обратилась к памяти по адресу *. Память не может быть «read»».

    1. Чтобы выключить (или ограничить) работу данной функции нажмите на кнопку «Пуск», в строке поиска введите sysdm.cpl, и нажмите ввод.
    2. В открывшемся окне свойств системы перейдите во вкладку «Дополнительно», рядом с опцией «Быстродействие» нажмите на «Параметры».
    3. Здесь перейдите на вкладку «Предотвращение выполнения данных», активируйте опцию «Включить DEP для всех…, кроме..», нажмите на «Добавить» внизу, и укажите системе путь к исполняемому файлу программы, при работе которой вылетает рассматриваемая ошибка.
    4. После этого нажмите на «Применить», и перезагрузите ваш ПК.
    Читайте также:  Pocketbook 616 как отключить подсветку

    Теперь DEP будет работать для всех программ, кроме указанной вами.

    Добавьте нужную программу в список исключений

    Если же вы хотите полностью отключить DEP, тогда запустите командную строку от имени администратора, и там наберите:

    bcdedit.exe/set nx AlwaysOff

    Заключение

    Причиной ошибки «Память не может быть read» могут быть различные факторы, описанные мной выше. Для решения проблемы выполните весь комплекс перечисленных выше советов, уделив особое внимание увеличению объёма виртуальной памяти и работе с «DEP» – это поможет исправить рассматриваемую в статье ошибку на вашем ПК.

    П омимо встроенного антивируса Defender, Windows 8.1 имеет и другие механизмы защиты от угроз. Один из них называется Data Execution Prevention или сокращённо DEP. Представляет он собой набор технологий, предотвращающих запуск программного кода из тех областей оперативной памяти, которые не являются в Windows исполняемыми.

    Однако в некоторых случаях DEP может стать причиной ошибок при запуске ряда приложений и игр.

    DEP отслеживает изменения в оперативной памяти и если обнаруживает, что некая программа использует её неправильно, тут же блокирует эту программу, а пользователь получает сообщение «Предотвращение выполнения данных» или «Инструкция по адресу обратилась к памяти по адресу ***. Память не может быть read (write)». Способов решения этой проблемы существует несколько.

    Если ошибка появилась «беспричинно», то есть вы до этого не устанавливали никаких программ, не изменяли параметров системы и прочее, есть смысл проверить компьютер на наличие вирусов как минимум одним сторонним антивирусным сканером. Сам DEP не препятствует проникновению на компьютер вредоносного ПО, а лишь регистрирует подозрительные изменения в памяти.

    Ошибка предотвращения выполнения данных также может возникнуть вследствие повреждения системных файлов . Просканируйте систему командой sfc /scannow и убедитесь, что целостность файлов Windows не нарушена.

    Если ошибка появилась после установки нового приложения либо же возникает при запуске конкретной программы, скорее всего причина кроется в неправильной работе последней. Решением может стать удаление, переустановка или переход на другую версию приложения, а также отключение DEP для всей системы или конкретных программ.

    Полное отключение DEP

    Чтобы деактивировать DEP, откройте командную строку от имени администратора и выполните следующую команду:

    bcdedit.exe /set nx AlwaysOff

    Чтобы изменения вступили в силу, перезагрузите компьютер. После этого ошибка «…Память не может быть read» должна исчезнуть. Для включения DEP применяется та же команда, но с параметром AlwaysOn.

    Отключение DEP для конкретных программ

    К полному отключению предотвращения выполнения данных стоит прибегать лишь в крайних случаях, более разумным решением является отключение DEP для конкретных конфликтных программ. Для этого в Панели управления выбираем Система -> Дополнительные параметры системы -> Дополнительно -> Параметры (Быстродействие).

    Читайте также:  Масса ядра лития 7 3

    В открывшемся окошке переключаемся на вкладку «Предотвращение выполнения данных», активируем радиокнопку «Включить DEP для всех программ и служб, кроме выбранных ниже», а затем указываем путь к исполняемому файлу программы, вызывающей ошибку DEP.

    Отключить службу «Предотвращение выполнения данных» (Data execution prevention),
    которая осуществляет контроль доступа к памяти. Для ее отключения необходимо
    внести небольшие коррективы в файл boot.ini. Файл размещен в корне диска,
    на котором установлена операционная система. Для доступа к нему, откройте
    «Мой компьютер» и в адресной строке сверху введите %systemdrive%Boot.ini и нажмите Enter.
    Или же другим способом: «Пуск» -> «Выполнить» -> %systemdrive%Boot.ini -> ОК.
    Есть еще третий способ доступа к файлу boot.ini:
    «Пуск» -> «Панель управления» -> «Система» -> «Дополнительно» ->
    «Загрузка и восстановление: Параметры» -> «Правка» .

    Открыв файл, найдите параметр «/noexecute=optin» и замените
    слово optin на alwaysoff. Т. е. параметр должен иметь вид «/noexecute=alwaysoff».
    После этого сохраните файл (Файл -> Сохранить) и перезагрузите компьютер.

    Есть, правда, одно «но» — файл boot.ini может быть защищен от записи и откажется
    сохраняться. Поэтому необходимо открыть системный диск (по умолчанию С) ,
    выбрать в верхнем меню пункт «Сервис» -> «Свойства папки» -> «Вид» и,
    прокрутив ползунок до самого низа, поставить галочку напротив пункта
    «Показывать скрытые файлы и папки» . После этого вы сможете увидеть файл boot.ini.
    Щелкните по нему правой кнопкой мыши и выберите «Свойства» , после чего снимите
    галочку напротив пункта «Только чтение» . Теперь можно вносить в файл любые
    коррективы и сохранять без проблем.

    Причиной ошибки может быть также некорректно установленная библиотека ole32.dll.
    Некоторые программы при установке/удалении могут повредить ключи в реестре,
    относящиеся к этой библиотеке. Для переустановки библиотеки, нажмите
    «Пуск» -> «Выполнить» и введите команду «regsvr32 %SystemRoot%system32ole32.dll»
    (без кавычек) , после чего нажмите ОК и перезагрузите компьютер.

    Можно также попробовать отключить в операционной системе Windows все сообщения об
    ошибках, и об ошибке «Память не может быть read» в том числе. Для этого отправляемся
    по следующему пути: «Пуск» -> «Панель управления» -> «Система» -> «Дополнительно» ->
    «Отчет об ошибках» и ставим галочку напротив пункта «Отключить отчет об ошибках» ,
    убрав при этом галочку напротив «Но уведомлять о критических ошибках» . Перезагружаем компьютер.

    Вот, в принципе, наиболее действенные способы. Если в вашем случае решить проблему ни одним из
    этих способов не удалось, попробуйте отключить компьютер на некоторое время от шнура питания
    (выключить из розетки) , дав оперативной памяти полностью обнулиться. Если не помогло –
    попробуйте на время заменить планку оперативной памяти или переустановить Windows

    Рекомендуем к прочтению

    Добавить комментарий

    Ваш адрес email не будет опубликован.