Как исправить ошибку access violation at address

Все об ошибке Access violation at address (in module, read of address) и о способах ее устранения. Универсальная инструкция.

Иногда при запуске игры или программы возникает ошибка Access violation at address, которая сообщает о проблеме на стороне прав доступа. Но это вовсе не означает, что действуют какие-то ограничения. Причем неважно в каком виде она появилась:

  • read of address 00000000
  • in module
  • write of address
  • the bat
  • Или каком-то другом. Это все одно и то же.

В переводе на русский означает «Нарушение доступа по адресу». Но что это за проблема и как ее исправить? Давайте разбираться.

Содержание статьи

  1. Диагностика памяти
  2. Чистый запуск
  3. Удаление программ
  4. Сканирование на предмет ошибок
  5. Проверка системных компонентов
  6. Редактирование DEP
  7. Выключение UAC
  8. Другие способы решения
  9. Комментарии пользователей

Диагностика памяти

Первый шаг — запустить диагностику памяти. Есть два способа, как это сделать:

  1. Универсальный, используя утилиту Memtest.
  2. Для пользователей Windows 10 и 8. Разберем его подробнее.

В строку поиска вводим слово «памяти» и запускаем средство.

сканирование памяти

Выбираем первый пункт с пометкой «рекомендуется». Система перезагрузится и начнется сканирование.

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

Чистый запуск

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

Для этого:

  1. Введите msconfig в строке «Выполнить», комбинация «WIN + R».msconfig команда
  2. Переместитесь в «Службы» и скройте все от «Майкрософт». Отключите оставшиеся.отключение служб
  3. Проделайте то же самое в разделе «Автозагрузка».чистка автозагрузки
  4. Перезагрузите компьютер.

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

Удаление программ

Как говорил ранее, ошибку Access violation at address могут вызывать некоторые приложения. Чаще всего это fl studio, Artmoney, txdworkshop. Поэтому удалите лишние через деинсталлятор «Your Uninstaller» или любой другой. Желательно это делать из безопасного режима.

Если в безопасный режим войти не удается, то откройте диспетчер задач «CTRL + SHIFT + ESC», во вкладке «Процессы» найдите нужную утилиту и правым щелчком мыши откройте ее расположение. После этого удалите процесс.

skype в диспетчере задач

Теперь, находясь в этой папке удалите содержимое.

Если приложение нужно, то попробуйте переустановить его. Предварительно очистив Windows утилитой «Ccleaner».

Сканирование на предмет ошибок

Некоторые системные файлы могут отсутствовать или быть повреждены. Желательно проверить это и исправить. Делается в автоматическом режиме с помощью команд в командной строке.

DISM /Online /Cleanup-Image /RestoreHealth – нужен доступ в интернет.

sfc /scannow

dism online

Напишите их и нажмите после каждой «Enter». По завершении перезапустите ПК.

Проверка системных компонентов

Стоит убедиться, что в реестре указаны компоненты Windows, отвечающие за правильную ее работу.

Будьте осторожны при редактировании реестра, неправильные действия могут нарушить работу ОС. Действуйте четко по инструкции.

Для этого:

  1. Войдите в редактор через «WIN + R» — regedit.regedit
  2. Перейдите по пути HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWinlogon и найдите два параметра: Userinit и Shell. Дважды щелкните по каждому из них. Убедитесь, что в графе «Значение» указаны правильные пути. При необходимости измените их.shell и userinit в реестре

Shell (должен ссылаться на исполняемый файл) – explorer.exe

Userinit (должен ссылаться на исполняемый файл) — C:Windowssystem32userinit.exe

По окончании перезапустите компьютер.

Редактирование DEP

Возможно, ошибку Access violation at address (in module, read of address) вызывает компонент «DEP», блокирующий в целях безопасности некоторые программы. В качестве решения предлагаю внести приложение в список исключений.

Как это сделать:

  1. Откройте «Свойства» ярлыка «Компьютер».свойства значка компьютер
  2. Перейдите в «Дополнительные параметры».дополнительные опции
  3. Во разделе «Дополнительно» щелкните по «Параметры» быстродействия.конфигурация быстродействия
  4. Зайдите в «Предотвращение выполнения» и активируйте последний параметр с пометкой «кроме выбранных ниже». Укажите нужное приложение через кнопку «Добавить».добавление exe файла в исключения dep

Выключение UAC

Большинство приложений разработанных на базе Java не работают из-за включенного контроля учетных записей, сокращенно «UAC». Давайте выключим его.

  1. Откройте классическую «Панель управления».
  2. Войдите в раздел «Учетный записи».учетные записи
  3. Щелкните по изменению контроля.настройка контроля для пользователя
  4. Передвиньте ползунок вниз до появления пометки «Никогда не уведомлять».режим без уведомлений

Другие способы решения

Если ничего не помогло, то предпримите следующие действия.

Помните, что Вы можете рассчитывать на мою помощь. Для этого напишите мне в комментариях.

Каждый, кто знаком с ОС Windows знает, что невозможно пользоваться компьютером, не столкнувшись с ошибками и проблемами. Многие из них можно решить обычной перезагрузкой системы. Но встречаются и такие, при которых невозможно продолжить работу. Одной из таких ошибок является «Access violation at address … in module». Читайте далее, как её исправить.Сообщение access violation

Содержание

  1. Причины появления ошибки Access violation at address … in module
  2. Как избавиться от ошибки обращения к памяти
  3. Проверка запуска оболочки Windows
  4. Чистка системного реестра Windows
  5. Другие методы решения ошибки «Access violation at address …»
  6. Восстановление или переустановка системы

Причины появления ошибки Access violation at address … in module

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

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

Как избавиться от ошибки обращения к памяти

Ошибка появляется при попытке выключить компьютер, перезагрузить его или поменять свой профиль. Но часто так и не удается это сделать из-за системного сообщения. Приходится либо выключить устройство из розетки, либо выключать его долгим нажатием кнопки питания Power. Перед тем, как устранять ошибку Access violation at address … in module, проверьте хранилище вирусов вашего антивирусного программного обеспечения. Возможно некоторые файлы, к которым вы пытались обратиться, были помещены сюда. Такие данные для системы будут уже не доступны.

  1. Чтобы это сделать, найдите значок на панели задач (трее) в виде стрелочки, нажмите её и появятся скрыты значки.
  2. Здесь выберите значок антивируса ПКМ.
  3. В контекстном меню обычно находится пункт «Карантин».

Пункт Карантин

Выберите его и проверьте содержимое. Если найдете там файлы программ, которым вы доверяете — удалите их из карантина. Если ошибка Access violation at address продолжается, необходимо переустановить данную программу и внести в антивирусе в список доверенных.

После этого попробуйте перезапустить компьютер и войти в ОС через последнюю удачную конфигурацию.

  1. Для этого при появления начального экрана нажмите клавишу F8 и не отпускайте до тех пор, пока не появится окно с несколькими способами запуска.
  2. Выберите «Запуск последней удачной конфигурации».
  3. В этом случае будет использована система с конфигурацией драйверов и реестра, которые работали до этого стабильно.

Пункт последняя удачная конфигурация

Выберите последнюю удачную конфигурацию в Windows

Читайте также: Указанная служба не может быть запущена, поскольку она отключена или все связанные с ней устройства отключены.

Проверка запуска оболочки Windows

Следующим шагом в исправлении ошибки Access violation at address … in module будет проверка запуска оболочки операционной системы.

  1. Откройте окно ввода команд — WIN+R.
  2. Введите следующую команду «Regedit» и подтвердите, нажав Enter.
  3. Откроются ветки, здесь выберите HKEY_LOCAL_MACHINE.
  4. Далее найдите ниже SOFTWARE.
  5. Здесь отыщите ветку Microsoft, ниже выберите Windows NT и CurrentVersion.
  6. И наконец выберите Winlogon.

Реестр ОС Windows

Когда вы откроете последнюю ветку в правой части появится окно со списком ключей и параметров, найдите здесь Shell. Его необходимо открыть как обычную папку, дважды нажав мышью. В исправной системе здесь должно быть значение Explorer.exe. Если у вас стоит иное — исправьте его и сохраните изменение. Точно так же нужно проверить ключ Userinit. Здесь по умолчанию установлено C:windowssystem32userinit.exe. Если здесь указано что-то другое — исправьте. Далее выйдите из редактора и закройте все окна. Перезагрузите компьютер и проверьте, появляется ли ошибка.

Чистка системного реестра Windows

В некоторых случаях при ошибке Ошибка Access violation at address in module помогает очистка системного реестра.

  1. Для этого вполне сгодится программ CCleaner, которую можно скачать по ссылке https://www.ccleaner.com/ru-ru.
  2. Загрузите и установите её.
  3. Откройте и выберите слева «Реестр».
  4. Нужно активировать внизу «Анализ», далее появится кнопка «Очистить».

Программа CCleaner

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

Другие методы решения ошибки «Access violation at address …»

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

  • выберите внизу рабочего стола «Пуск» и введите в поиске «Командная строка»;
  • в результатах выберите её ПКМ и нажмите «От имени администратора»;
  • в черном окне введите «sfc /scannow» без кавычек.Команда sfc

Будет произведена проверка файлов на жестком диске. Эта команда сканирует файловую систему жесткого диска и, если находит сбои в системных файлах автоматически исправляет их. Компьютер будет перегружен в процессе. Если этот способ снова не помог вам устранить проблему «Access violation at address … in module», попытайтесь вернуть рабочую систему при помощи точек сохранения.

  1. Снова откройте меню «Пуск», выберите поисковую строку и введите «Восстановление».
  2. В результатах найдите «Восстановление системы» — выберите его.
  3. Выберите пункт, который запустит восстановление.Окно восстановления системы
  4. В следующем окне нужно будет выбрать точку, которую система создала ранее.
  5. Выберите её и подтвердите свои действия.

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

  1. Выберите кнопку «Пуск», затем найдите справа раздел «Панель управления».
  2. В следующем окне отыщите «Восстановление или удаление программ».
  3. В списке найдите проблемное ПО и выберите кнопку «Удалить» на панели инструментов или в самом блоке (в зависимости от версии ОС).Adobe Creative Cloud в списке программ
  4. Далее вам нужно снова установить ПО из дистрибутива.

Восстановление или переустановка системы

Если ни один из методов вам не помог решить эту ошибку, попробуйте сделать восстановление с участием диска Windows.

  1. Для этого вставьте в привод диск и перезагрузите компьютер.
  2. Войдите в настройки подсистемы BIOS и выберите загрузку с дисковода.
  3. Перезагрузите компьютер и активируйте загрузку с оптического диска.
  4. После того, как будут установлены временные файлы, вы увидите окно, где предлагается переустановить систему с несколькими вариантами. Выберите «Восстановление системы».
  5. Далее найдите необходимое восстановление и нажмите «Готово».

Когда будет выполнено восстановление, проверьте наличие ошибки на компьютере. В том случае, если она снова возникает, придется переустановить Windows. Это можно сделать, не затрагивая файловый раздел жесткого диска. Это значит, что вы можете переустановить только систему на диске C:, а другие диски, где обычно хранятся файлы пользователя не трогать. После переустановки системы вы точно избавитесь от ошибки Access violation at address … in module.

Skip to content

Основная проблема с которой сталкиваются пользователи ПК — является «синий экран смерти». Его появление может свидетельствовать о проблемах с исполняемыми системными файлами которые подверглись изменениям или перезаписыванию. Решение возникших сложностей не всегда можно назвать простыми. Одни решаются буквально за пару минут, а у других следует определить корень. Исходя из информации которую нам предоставляет Windows, мы следует процедуре восстановления повреждённых объектов файловой системы. Некоторые ради экономии времени или по незнанию начинают полную переустановку, но мы с Вами попытаемся решить ошибку без данной процедуры.

Причины возникновения и разновидности

Ошибка Access violation at address и способы решения

Нам хотелось бы выделить основные текстовые и кодовые представления ошибки встречаемые пользователями. В большинстве случаев помогает полная переустановка системы. Данная процедура решит большинство проблем, при перезаписи исполняемых файлов. Замена битых файлов совершенно новыми — один из вариантов решения.

Основной причиной возникновения можно назвать нарушение целостности системы. При рассмотрении ошибки «Access violation» мы взяли за исходные материалы сами исполняемые процессы. При детальном рассмотрении можно обнаружить, что процесс обращается к .dll файлам у которых затёрты заголовоки. В результате мы видим на экране «Access violation at address $ (где символ $ — код процесса) in module«. Определение причины по коду можно сделать из панели администрирования Windows.

Дополнительной серьезной причиной могут служить битые секторы в которые при дефрагментации были записаны корневые файлы. Обычно это драйвера или .dll-ки папки Виндовс.

Способы решение ошибки

Нам потребуется заняться восстановлением целостности системы. Хорошо поможет специальная команда встроенная в операционную систему. Для ее вызова, следуем инструкции:

  1. Нажимаем WIN+R для открытия диалогового окна ввода команды.
    Ошибка Access violation at address и способы решения
  2. Пишем команду cmd и нажимаем ОК.
    Ошибка Access violation at address и способы решения
  3. На экране отобразится терминал работы с системой:
    Ошибка Access violation at address и способы решения
  4. Вводим команду «sfc/scannow«.
  5. Нам предложат перезагрузить систему для исправления ошибок.
  6. Перезапускаемся и ничего не нажимаем. Начнется автоматическая проверка целостности файлов.
  7. После запуска, вновь заходим в терминал и вводим команду «chkdsk C: /f /r«. Она проверит жесткие диски на битые секторы и заблокирует их, предварительно перенеся файлы в безопасное место.
    Ошибка Access violation at address и способы решения
  8. Ошибка Access violation at address должна исчезнуть.

Второй способ заключается в стандартных действиях которые каждый пользователь должен выполнять ежедневно.

  1. Займитесь проверкой и обновлением системы до последней версии.
  2. Обновите драйвера видеокарт, если Access violation появляется при запуске игры.
  3. Исполняемые файлы VC++ должны быть в актуальном состоянии. Скачать можно с официального сайта Microsoft.
  4. Произведите дефрагментацию диска С. Это поможет перенести данные в рабочие секторы жесткого диска (если у вас SSD, то пропускаем шаг).

( 1 оценка, среднее 2 из 5 )

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

Как исправить ошибку Access violation

Исправление ошибки Access violation.

Причины и решения

Такой универсальный вариант (переустановка ОС) уже давно является наиболее рекомендуемым на различных IT-форумах, а также некоторыми «специалистами» воспринимается как «панацея» от любых проблем, что, конечно же, не отвечает действительности. Да, справедливости ради стоит отметить, что полная чистая переустановка Windows практически гарантированно решит имеющиеся программные проблемы, но ни в коем разе не аппаратные. Поэтому не стоит спешить «сносить» операционную систему, для начала следует определить причинно-следственную связь и только после этого принимать подобные кардинальные решения. Итак, рассматриваемая ошибка «Access violation» сигнализирует о том, что какой-либо процесс при обращении к нужному ему типу памяти встречается с трудностями. Например, при запуске игрового программного обеспечения процесс пытается обратиться не к свойственному ему типу памяти, вызывая при этом упомянутую выше ошибку, которая сопровождается текстовым сообщением в виде «Access violation at address № in module «…dll. Write of address…».

Ошибка Access violation

Причин возникновения подобной ситуации может быть очень много, что серьёзно усложняет определение причинно-следственной связи, поэтому и применяемые методы носят комплексный характер, а именно:

  1. Проведите полную проверку операционной системы на наличие вирусной активности. Не прибегайте исключительно к услугам штатного антивируса, а обратите своё внимание на сторонние утилиты, к примеру, «DoctorWeb Curelt», «Malwarebytes» и «Adwcleaner». Проверьте всё тесно связанное с работой компьютера, включая внешние устройства хранения информации, которые подключались ранее к компьютеру, так как не исключено, что основная «зараза» засела именно там.
  2. Проверьте операционную систему на целостность компонентов, для этого:

Процесс сканирования и внесение правок может быть продолжительным, но прерывать функционирование утилиты не рекомендуется. Дополнительно после завершения работы «sfc/scannow» можно обратиться к помощи команды «dism.exe /online /cleanup-image / restorehealth», инициировать работу, которой можно с помощью той же командной строки. Сканирование диска командой

  1. Также будет не лишним проверить используемые жёсткие диски и/или твердотельные накопители и наличие битых секторов, ошибки. Для этого подойдёт хотя бы штатная утилита «CHKDSK». Проверка утилитой диска

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

  1. «Проверка реестра»:

Также будет не лишним прибегнуть к функционалу программы «CCleaner» для проверки реестра на ошибки. Основную проблему это может не решить, но добиться улучшения общего состояния операционной системы вполне реально.

  1. «Проверка корректности используемого драйверного обеспечения». Откройте «Диспетчер устройств» и удостоверьтесь, что все компоненты полностью работоспособны и среди них нет неизвестного устройства, которое было бы помечено жёлтым треугольником с восклицательным знаком внутри. Дополнительно можно обратиться к специализированному софту и проверить актуальность всех используемых драйверов.
  2. «Проверка качества работы программного обеспечения». Если рассматриваемая проблема проявилась при открытии какой-либо программы или игры, то попробуйте полностью удалить их и установить заново, но удостоверившись в том, что возможности вашего компьютера, а также версия операционной системы соответствует техническим требованиям продукта. Если игра была получена не совсем «честным/законным» путём, то попробуйте скачать другой репак или сменить основной источник. Если вы уверены в том, что вирусного программного обеспечения нет и проблема проявляется в отдельно взятом программном обеспечении при любых манипуляциях с ним, то можно попробовать внести данное ПО в список исключения DEP, для этого:

Перезагрузите компьютер и проверьте качество работы Windows и работоспособность нужной вам программы/игры.

 Заключение

К сожалению, как видно из всего представленного выше, в рассматриваемой ошибке нет каких-то конкретных причин возникновения. «Access violation», как и её собратья, является лишь следствием каких-либо сбойных моментов в работе Windows, поэтому и все приведённые рекомендации направлены на восстановление штатной работы OS. Всё сказанное в начале про переустановку Windows таковым и остаётся и в завершении статьи.

Contents

  • What Does Access Violation Mean on Windows 10?
  • How to Resolve the Exception Access Violation Error on Windows 10
  • Perform a Malware Scan
  • Add Data Execution Prevention Exception
  • Disable User Account Control
  • Make Sure the Affected Software Isn’t Set as Read-only
  • Run the Problematic Program in Compatibility Mode
  • Check Your RAM for Corruption
  • Create an options.ini file
  • Troubleshoot Your Hardware
  • Reinstall the Problematic Software
  • Best solutions to the “Access Violation at Address” error on Windows 11
  • Conclusion

Best solutions to the Access Violation at Address error on Windows 10/11

Some software programs may not launch normally if your computer has corrupted software or memory. Anytime your access is denied, you will usually receive an access violation error, which usually reads, “Exception_Access_Violation.” In most cases, it comes with an error code or address.

Malware infections and faulty hardware may cause the Exception_Access_Violation issue. Improper file settings and compatibility errors may also result in the problem. If you’re looking for ways to fix the Exception_Access_Violation error on Windows 10, this article will help you.

What Does Access Violation Mean on Windows 10?

“Access Violation at Address” errors can happen on every version of Windows, including Windows 10. If you see this message, it means the software you’re trying to run is attempting to access a protected memory address. It appears in the form of a pop-up window that prevents PC users from using particular programs.

The thing is, the Exception Access Violation error almost always occurs in any application. Many users have reported encountering the issue while running JAVA, Visual Studio, and antivirus applications. It even appears while operating certain games such as World of Warships, Overwatch, and Minecraft.

How to Resolve the Exception Access Violation Error on Windows 10

Perform a Malware Scan

If your computer is heavily infected with malware, it can corrupt your memory system and cause this error to appear. You should perform a thorough and detailed security scan if you have noticed suspicious behavior on your computer. Occasionally, the Windows built-in antivirus software may not find anything. So, you might want to try another option such as Auslogics Anti-Malware. This tool can identify a potential malware infection that was ignored by your primary antivirus.

If malware isn’t the problem, we recommend scanning your system using a PC optimization tool such as Auslogics BoostSpeed. BoostSpeed’s cleaning module is designed to clean all types of PC junk. It safely removes temporary system and user files, problematic system files, leftover Windows Update files, temporary Sun Java files, and much more. Some registry anomalies, such as empty keys, do not typically pose any issues until they accumulate over time. They can become extremely complicated, rendering your computer useless. This is why we recommend using the Registry Cleaner in BoostSpeed. Experts consider it one of the safest tools for eliminating all those annoying glitches and crashes once and for all.

Add Data Execution Prevention Exception

It’s possible to add the problematic program to a data execution prevention exception list if there’s no malware on your computer. This will let you run the program regardless of the “Access Violation at Address” error.

  1. Input “Control Panel” (without the quotes) in your Windows Search bar and launch the app.
  2. Scroll down and click on System.
  3. In the left pane, click on Advanced System Settings.
  4. In the Advanced tab, click on Settings under the Performance section.
  5. In the Performance Options window, click on the Data Executive Prevention tab.
  6. Tick the “Turn on DEP for all programs and services except those I select” option, then click on the Add button and find your program’s .exe file.
  7. Add it to the list, click on Apply, and then on Okay to save the changes.

Try running the problematic program again to see if you still get the Access Violation at Address error.

Disable User Account Control

You are more likely to encounter the Access Violation at Address problem if you are trying to install or run a Java-based application. If this is the case, you can temporarily disable User Account Control to fix the problem.

  1. In your Windows search bar, enter “Control Panel” (without the quotes) and launch the app.
  2. Scroll down and click on User Accounts.
  3. In the right pane, click on Change User Account Control settings.
  4. Move the slider down to “Never Notify” and click OK.

Try running the affected program again to see if the problem has been resolved. After you run your program, remember to enable your user account settings.

Make Sure the Affected Software Isn’t Set as Read-only

You won’t be able to launch or run a program effectively if it’s in read-only mode. Here’s how to check and fix it:

  1. Locate the affected program’s shortcut on your desktop and right-click on the file.
  2. From the menu, select the Properties option.
  3. Go to the General tab, locate the Attributes section and make sure the read-only option is not checked.
  4. Click on Apply, then on Ok to save changes.

Run the Problematic Program in Compatibility Mode

The reason you are receiving an Exception Access Violation error message on your PC could be due to compatibility issues. Some older programs that you are trying to run may not be compatible with newer operating systems like Windows 10. Nevertheless, your operating system has a feature called Compatibility Mode that lets you run older applications. If you encounter this problem with an application, you can enable Compatibility mode.

  1. Locate the affected program’s shortcut on your desktop and right-click on the file.
  2. From the menu, select the Properties option.
  3. In the Properties menu, select the Compatibility tab.
  4. Select the Run this program in compatibility mode checkbox, then select an older windows version from the drop-down menu.
  5. Click on Apply and OK to save changes.

Run the problematic program again to see if you still get the Access Violation at Address error.

Check Your RAM for Corruption

You may encounter this Access Violation at Address error if you previously had a malware infection that caused damage to parts of your RAM.

You can check your RAM for corruption using the following steps:

  1. Input “Windows memory diagnostic” (without the quotes) in your Windows Search bar and launch the program.
  2. Click on the “Restart now and check for problems” option.
  3. Just let the program run and wait for its results.

You should replace your RAM if it is corrupted.

Create an options.ini file

If Lord of The Rings: Battle for Middle Earth is the program giving the EXCEPTION_ACCESS_VIOLATION error, follow the steps below:

  1. Use the Win + R shortcut to launch the Run box.
  2. Input “%appdata%” (without the quotes) and click Enter.
  3. In the folder, create an options.ini file if it doesn’t exist there.
  4. Right-click on an empty space in the folder, and choose New > Text Document.
  5. Paste the following lines into the Text Document:

AudioLOD = Low

HasSeenLogoMovies = yes

IdealStaticGameLOD = VeryLow

Resolution = 800 600

StaticGameLOD = VeryLow

TimesInGame = 1

  1. Now, select File > Save as.
  2. Choose All Files and enter the options.ini in the File name section.
  3. Select the AppData > My Battle for Middle Earth Files folder as the saving location and click Save.

Troubleshoot Your Hardware

Many Windows users have had success in fixing the Access Violation at Address error by resolving their hardware issues. Simply follow the steps below:

  1. Use the Win + I shortcut to launch the Settings app.
  2. Click on Update & Security.
  3. In the left pane, click on Troubleshoot.
  4. Follow the on-screen instructions to run the troubleshooter.
  5. Wait for the troubleshooting process to be completed.

Run the problematic program again to see if you still get the Access Violation at Address error.

Reinstall the Problematic Software

If you get the Access Violation at Address error when running a certain application, try reinstalling the affected program. There is a good chance that parts of the app you are trying to run have been damaged from crashes or improper saves. Perhaps, a buggy update has caused issues.

To remove the affected program, follow these steps:

  1. Use the Win + I shortcut to launch the Settings app.
  2. Click on Apps.
  3. Locate the problematic application from the list and click on Uninstall.
  4. Follow the usual procedure for installing the affected program.

Best solutions to the “Access Violation at Address” error on Windows 11

One of the ways of getting rid of errors and glitches on Windows is updating to the latest version of the OS available. Typically, operating system upgrades happen automatically. However, if you haven’t received the latest upgrade, follow these steps:

  • Go to Start.
  • Select Settings.
  • Navigate to Update & Security.
  • Select Windows Update
  • Go to Check for updates.

If an update is available, it will be automatically installed.

Windows 11 comes with several notable upgrades including new widgets, system tray upgrades, redesigned settings, multiple desktops — and more. However, while a lot of glitches and errors have been addressed in Windows 11, you may still be running into the Access Violation at Address” error.

Now, if you need to solve the “Access Violation at Address” error on Windows 11, you can go through all the same fixes as listed above. This includes:

  • Running a malware scan
  • Adding the data execution prevention exception
  • Making sure that the affected software isn’t set to “read only”
  • Checking your RAM for corruption
  • Troubleshooting your hardware
  • And, finally, reinstalling the problematic software

If you believe that your system is infected with malware but your default antivirus program hasn’t revealed any issues, consider getting a second opinion and running a scan with Auslogics Anti-Malware. The software is fully compatible with Windows 10 and Windows 11 and has been upgraded to detect even the rarest malicious items on a PC.

If a malware scan hasn’t revealed any issues on your system but you are still running into errors and experiencing a general slowdown of your system, consider using Auslogics BoostSpeed.

The program has been designed for Windows 11 and can efficiently remove junk files and other speed reducing issues from your PC in just a few clicks.

Conclusion

There you have it—nine solutions to fix your “Access Violation at Address” problems on Windows 10. Feel free to use the comment box below to share which method helped you get rid of the error.

openclo

2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

1

19.04.2017, 21:05. Показов 30124. Ответов 16

Метки нет (Все метки)


Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
unit Unit1;
 
interface
 
uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons, Vcl.ExtCtrls;
 
type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Button10: TButton;
    Button11: TButton;
    Button12: TButton;
    Button13: TButton;
    Button15: TButton;
    Button16: TButton;
    Button17: TButton;
    Button18: TButton;
    Button19: TButton;
    Button20: TButton;
    Button21: TButton;
    Button22: TButton;
    Button23: TButton;
    Button24: TButton;
    Button14: TButton;
    Button28: TButton;
    Button29: TButton;
    Button30: TButton;
    Button31: TButton;
    Button32: TButton;
    Button25: TButton;
    Button26: TButton;
    Button27: TButton;
    Label1: TLabel;
    Edit1: TEdit;
    BitBtn1: TBitBtn;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    procedure Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure BitBtn1Click[FLEFT][/FLEFT](Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
 var
i, pik, a, b: integer;
 
function rando(x: integer): integer;
begin
randomize;
  result := random(32);
end;
 
 
 
procedure TForm1.BitBtn1Click(Sender: TObject);
var NumberBtn: integer;
begin
Bitbtn1.Visible:=false;
 
button1.Visible:=true;
button10.Visible:=true;
button11.Visible:=true;
button12.Visible:=true;
button13.Visible:=true;
button14.Visible:=true;
button15.Visible:=true;
button16.Visible:=true;
button17.Visible:=true;
button18.Visible:=true;
button19.Visible:=true;
button2.Visible:=true;
button20.Visible:=true;
button21.Visible:=true;
button22.Visible:=true;
button23.Visible:=true;
button24.Visible:=true;
button28.Visible:=true;
button29.Visible:=true;
button3.Visible:=true;
button30.Visible:=true;
button31.Visible:=true;
button32.Visible:=true;
button25.Visible:=true;
button26.Visible:=true;
button27.Visible:=true;
button4.Visible:=true;
button5.Visible:=true;
button6.Visible:=true;
button7.Visible:=true;
button8.Visible:=true;
button9.Visible:=true;
NumberBtn:=rando(a);
(*Name:='Button'+ inttostr(NumberBtn);
TButton(FindComponent(Name)).Font.size:=15;
label2.Caption:=inttostr(strtoint(label2.Caption)+1);
  *)
end;
 
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
edit1.Text := inttostr(key);
label1.Caption := edit1.Text;
//if (strtoint(label1.Caption)= 70) then button18.default := true else button18.Default := false;
 
 
end;
 
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
  var a:integer;
begin
if (Ord(Key)=81) then button1.default := true else button1.Default := false;
if (Ord(Key)=85) then button10.default := true else button10.Default := false;
if (Ord(Key)=73) then button11.default := true else button11.Default := false;
if (Ord(Key)=79) then button12.default := true else button12.Default := false;
if (Ord(Key)=65) then button13.default := true else button13.Default := false;
if (Ord(Key)=90) then button14.default := true else button14.Default := false;
if (Ord(Key)=222) then button15.default := true else button15.Default := false;
if (Ord(Key)=186) then button16.default := true else button16.Default := false;
if (Ord(Key)=83) then button17.default := true else button17.Default := false;
if (Ord(Key)=68) then button18.default := true else button18.Default := false;
if (Ord(Key)=70) then button19.default := true else button19.Default := false;
if (Ord(Key)=221) then button2.default := true else button2.Default := false;
if (Ord(Key)=71) then button20.default := true else button20.Default := false;
if (Ord(Key)=72) then button21.default := true else button21.Default := false;
if (Ord(Key)=74) then button22.default := true else button22.Default := false;
if (Ord(Key)=75) then button23.default := true else button23.Default := false;
if (Ord(Key)=76) then button24.default := true else button24.Default := false;
if (Ord(Key)=88) then button28.default := true else button28.Default := false;
if (Ord(Key)=67) then button29.default := true else button29.Default := false;
if (Ord(Key)=219) then button3.default := true else button3.Default := false;
if (Ord(Key)=86) then button30.default := true else button30.Default := false;
if (Ord(Key)=66) then button31.default := true else button31.Default := false;
if (Ord(Key)=78) then button32.default := true else button32.Default := false;
if (Ord(Key)=77) then button25.default := true else button25.Default := false;
if (Ord(Key)=188) then button26.default := true else button26.Default := false;
if (Ord(Key)=190) then button27.default := true else button27.Default := false;
if (Ord(Key)=80) then button4.default := true else button4.Default := false;
if (Ord(Key)=87) then button5.default := true else button5.Default := false;
if (Ord(Key)=69) then button6.default := true else button6.Default := false;
if (Ord(Key)=82) then button7.default := true else button7.Default := false;
if (Ord(Key)=84) then button8.default := true else button8.Default := false;
if (Ord(Key)=89) then button9.default := true else button9.Default := false;
a:=0;
label1.caption:=inttostr(rando(a));
 
 
end;
 
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
var NumberBtn,a:integer;
begin
 
//while (strtoint(label2.caption)>0) do begin
  if (strtoint(label2.caption)>0) and
  (Tbutton(FindComponent(name)).default = true) and
  (Tbutton(FindComponent(name)).font.size = 15) then begin
 Tbutton(FindComponent(name)).font.size := 8;
 label2.Caption:=inttostr(strtoint(label2.Caption)-1);
 label4.Caption:=inttostr(strtoint(label4.Caption)+1) end; (*else
 if (Tbutton(FindComponent(name)).default = false) then
 label2.Caption:='1';
                                                           *)
//end;
 
if (strtoint(label2.caption)=0) then  begin
NumberBtn:=rando(a);
if (NumberBtn<>strtoint(label3.Caption)) then begin
Name:='Button'+ inttostr(NumberBtn);
TButton(FindComponent(Name)).Font.size:=15;
label2.Caption:=inttostr(strtoint(label2.Caption)+1);
label3.Caption:=inttostr(NumberBtn);
end else if (NumberBtn=strtoint(label3.Caption)) then begin
  NumberBtn:=rando(a);
Name:='Button'+ inttostr(NumberBtn);
TButton(FindComponent(Name)).Font.size:=15;
label2.Caption:=inttostr(strtoint(label2.Caption)+1);
label3.Caption:=inttostr(NumberBtn);
  end;
 end;
end;
 
 
 
 
 
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
var numberbtn:integer;
begin
if (Ord(Key)=81) then button1.Default := false;
if (Ord(Key)=85) then button10.Default := false;
if (Ord(Key)=73) then button11.Default := false;
if (Ord(Key)=79) then button12.Default := false;
if (Ord(Key)=65) then button13.Default := false;
if (Ord(Key)=90) then button14.Default := false;
if (Ord(Key)=222) then button15.Default := false;
if (Ord(Key)=186) then button16.Default := false;
if (Ord(Key)=83) then button17.Default := false;
if (Ord(Key)=68) then button18.Default := false;
if (Ord(Key)=70) then button19.Default := false;
if (Ord(Key)=221) then button2.Default := false;
if (Ord(Key)=71) then button20.Default := false;
if (Ord(Key)=72) then button21.Default := false;
if (Ord(Key)=74) then button22.Default := false;
if (Ord(Key)=75) then button23.Default := false;
if (Ord(Key)=76) then button24.Default := false;
if (Ord(Key)=88) then button28.Default := false;
if (Ord(Key)=67) then button29.Default := false;
if (Ord(Key)=219) then button3.Default := false;
if (Ord(Key)=86) then button30.Default := false;
if (Ord(Key)=66) then button31.Default := false;
if (Ord(Key)=78) then button32.Default := false;
if (Ord(Key)=77) then button25.Default := false;
if (Ord(Key)=188) then button26.Default := false;
if (Ord(Key)=190) then button27.Default := false;
if (Ord(Key)=80) then button4.Default := false;
if (Ord(Key)=87) then button5.Default := false;
if (Ord(Key)=69) then button6.Default := false;
if (Ord(Key)=82) then button7.Default := false;
if (Ord(Key)=84) then button8.Default := false;
if (Ord(Key)=89) then button9.Default := false;
 
end;
 
 
end.

Помогите, пожалуйста, я пишу тренажер. Цель программы: при нажатии на клавишу, которая была выбрана рандомом , шрифт(то, что написано в Caption), вместо 15, становился 8 и при этом выбиралась новая клавиша и у неё менялся шрифт на 15… Если нажата клавиша, которая не имеет на данный момент шрифт 15, всё оставалось как прежде, пока не будет нажата нужная нам клавиша…. Всё реализовал, но иногда при выполнении выскакивает ошибка (после нажатия клавиши): «Access violation at address 005CEB83 in module ‘Project1.exe’. Read of address 00000074.»

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



882 / 584 / 179

Регистрация: 28.02.2017

Сообщений: 2,359

Записей в блоге: 1

19.04.2017, 21:41

2

Какой кошмар… Зачем стока дизайн-тайм кнопок? FormKeyDown?
Не совсем понял задумку, приложите что ли проект…



0



2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

19.04.2017, 21:48

 [ТС]

3

Код я не чистил… не педант…. а сразу выложил, чтобы узнать в чём суть проблемы….

Миниатюры

Ошибка "Access violation at address."
 



0



northener

пофигист широкого профиля

4602 / 3062 / 850

Регистрация: 15.07.2013

Сообщений: 17,662

20.04.2017, 02:58

4

Цитата
Сообщение от openclo
Посмотреть сообщение

Всё реализовал, но иногда при выполнении выскакивает ошибка (после нажатия клавиши): «Access violation

Тебе повезло! Твоя ошибка была замечена процессором, в результате чего ты получил соощение об AV.
Код твой очень фиговый, если не сказать грубо. Вот например:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
var NumberBtn,a:integer;
begin
 
//while (strtoint(label2.caption)>0) do begin
  if (strtoint(label2.caption)>0) and
  (Tbutton(FindComponent(name)).default = true) and
  (Tbutton(FindComponent(name)).font.size = 15) then begin
 Tbutton(FindComponent(name)).font.size := 8;
 label2.Caption:=inttostr(strtoint(label2.Caption)-1);
 label4.Caption:=inttostr(strtoint(label4.Caption)+1) end; (*else
 if (Tbutton(FindComponent(name)).default = false) then
 label2.Caption:='1';
...

Что есть name в этом коде?



0



openclo

2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

20.04.2017, 06:20

 [ТС]

5

Там ниже написано…..

Delphi
1
2
3
4
5
if (strtoint(label2.caption)=0) then  begin
NumberBtn:=rando(a);
if (NumberBtn<>strtoint(label3.Caption)) then begin
Name:='Button'+ inttostr(NumberBtn);
TButton(FindComponent(Name)).Font.size:=15;

Классно, конечно, что вы знаете, что эта за ошибка, но мне нужно именно решение данной проблемы…..



0



2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

20.04.2017, 07:13

 [ТС]

6

Наверное, вся суть проблемы из-за чего происходит данная ошибка, заключается в том, что во время ошибки (когда нажимаю «Break») я просматриваю свою переменную «TButton(FindComponent(Name)).Font.size», то она имеет значение: «inaccessible value»…
Я прав?

Миниатюры

Ошибка "Access violation at address."
 



0



882 / 584 / 179

Регистрация: 28.02.2017

Сообщений: 2,359

Записей в блоге: 1

20.04.2017, 07:25

7

Я не вижу объявления Name и не вижу инициализации Name. Вы что, портите TForm1.Name?? О____О

Добавлено через 1 минуту
Надо подумать как это всё сделать иначе… гм…



0



Модератор

8256 / 5478 / 2249

Регистрация: 21.01.2014

Сообщений: 23,580

Записей в блоге: 3

20.04.2017, 12:07

8

Цитата
Сообщение от GoodWeather
Посмотреть сообщение

Надо подумать как это всё сделать иначе

Мне как-то вот так подумалось

Миниатюры

Ошибка "Access violation at address."
 



0



2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

20.04.2017, 22:35

 [ТС]

9

Я извиняюсь за свою упертость и не профессионализм, но скажите мне, пожалуйста, из-за чего у меня появляется данная ошибка?



0



Модератор

8256 / 5478 / 2249

Регистрация: 21.01.2014

Сообщений: 23,580

Записей в блоге: 3

21.04.2017, 07:19

10

openclo, а Вы можете сказать, почему у меня сегодня машина не завелась? Вот так вот, не видя самой машины? Вот и я ничего не могу сказать, не видя Вашего проекта… Именно проекта, а не того кода, который Вы уже выкладывали… Требуется как минимум пройтись по нему дебагером… Упакуйте в архив файлы *.pas, *.dfm, *.dpr и загрузите в тему…



0



2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

21.04.2017, 23:49

 [ТС]

11

offtop: жаль, что ваши первые два вопроса про машину — риторические…



0



northener

пофигист широкого профиля

4602 / 3062 / 850

Регистрация: 15.07.2013

Сообщений: 17,662

22.04.2017, 02:17

12

Лучший ответ Сообщение было отмечено openclo как решение

Решение

Delphi
1
[quote="northener;10350191"]Что есть name в этом коде?[/quote]

К https://www.cyberforum.ru/post10350191.html добавлю ещё вопрос. Чему в данном коде равно name?
Ну и вообще весь код процедуры

Delphi
1
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);

есть «бред сивой кобылы в темную мартовксую ночь»! Я бы возможно помог бы её исправить, но не зная задачи её исправить невозможно.

Добавлено через 30 минут
Проверка показала что ошибка возникает в строке

Delphi
1
TButton(FindComponent(Name)).Font.size:=15;

Из сообщения об ошибке «Read of address 000000хх» ясно что была попытка обращения к объекту с адресом 0. Теперь читаем справку по TComponent.FindComponent и проясняем для себя, что FindComponent есть функция, которая возвращает nil, если компонент с таким именем не найден на форме.
Далее смотри/думай сам.



1



openclo

2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

22.04.2017, 21:05

 [ТС]

13

всё… Спасибо большое «northener» за пост, единственный человек, который реально помог и услышал, какой ответ я хотел получить…. Если кому интересно, проблема была в функции «rando»…. Она генерировала число 0 => такой клавиши не было (button0) и, поэтому, вылазила ошибка…

Исходное:

Delphi
1
2
3
4
5
function rando(x: integer): integer;
begin
randomize;
  result := random(32);
end;

Исправленное:

Delphi
1
2
3
4
5
6
7
8
9
10
11
function rando(x: integer): integer;
begin
randomize;
result := 0;
  repeat
  result := random(32);
  until (result <> 0 );
 
 
 
end;



0



D1973

Модератор

8256 / 5478 / 2249

Регистрация: 21.01.2014

Сообщений: 23,580

Записей в блоге: 3

23.04.2017, 07:16

14

Не по теме:

Цитата
Сообщение от openclo
Посмотреть сообщение

какой ответ я хотел получить

Т.е. все остальное в этом коде — по фэншую :)

Цитата
Сообщение от openclo
Посмотреть сообщение

Исправленное:

А зачем отдельная функция в несколько строк, да еще и с параметром, который не используется, если есть функция RandomRange из модуля Math

Delphi
1
RandomRange(1, 33);



0



2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

23.04.2017, 08:15

 [ТС]

15

Про RandomRange в Delphi не знал… Знал только, что в python’e есть что-то похожее….
Но спасибо!



0



D1973

23.04.2017, 09:14

Не по теме:

Цитата
Сообщение от openclo
Посмотреть сообщение

Про RandomRange в Delphi не знал…

т.е. тот код, который я Вам в качестве примера привел, еще 3 дня назад — Вы и не посмотрели… Ну, дело-то хозяйское…



0



2 / 2 / 0

Регистрация: 17.04.2017

Сообщений: 33

23.04.2017, 11:20

 [ТС]

17

Я просил мне написать по поводу ошибки, точнее, из-за чего она появляется, а не писать мне новую программу….

Цитата
Сообщение от openclo
Посмотреть сообщение

Всё реализовал, но иногда при выполнении выскакивает ошибка (после нажатия клавиши): «Access violation at address 005CEB83 in module ‘Project1.exe’. Read of address 00000074.»



0



When you install a software program, whether that’s a video game, word processing application, or a media player, you expect it to work when you launch it and stay working when in use. Unfortunately, if you have corrupted software or memory that is damaged, you may find that you are unable to access certain pieces of software as you normally would.

Exception Access Violation Error Code Example

When access is denied, you end up with an access violation error, which often reads “Exception_Access_Violation” with an error code or address attached. In some cases, this error may pop up with a specific module that’s causing the problem or provide the name of the software causing the issue.

What is the Access Violation at Address Error, and Why Does it Pop Up?

The access violation at address error is Windows-specific and can occur on all operating system versions, including Windows 10. If you have been getting this error, it means that the software you are attempting to launch or run is trying to access a protected memory address. When this occurs, the attempt to access the protected memory is denied, as the program you are trying to run should not have access to this particular address except for the program that is currently using it.

How to Read the Numeric Error Code?

In most cases, the error will be accompanied by a numeric code that is between 7-10 digits in length. For example, 0xC0000005 is a broad access violation error that prevents users from playing audio or accessing the control panel. When you see a numeric error code pop up, you can debug it by reading the exception parameters (the letter and numbers). The first exception parameter (0) will tell you the type of violation, the second exception parameter (1) will tell you the address. You can use this code to identify the cause of the problem and potentially the fix for it as well.

To help you with your access violation at address error, we’ve compiled 9 easy to try solutions below.

1. Inspect Your Computer for a Malware Infection.

Windows Defender Malware Detected

If any of your software is heavily infected with malware, it can corrupt your memory systems which can cause this error to pop up. If you’ve noticed your computer acting up before getting an access violation at address error, such as unprovoked alerts or fake browser windows, then a detailed and deep scan should be done. If you’re just using the built-in antivirus software and it doesn’t find anything, you may want to try another option to see if a malware infection was missed. Getting rid of the malware will solve the issue.

2. Add Your Program to an Exception Access List.

If you have no malware on your computer, you can add the program that you want to run to a data execution prevention exception list. This will allow you to run the program despite the error code. Here is how to do this.

  1. In your computer’s search bar, type in “control panel” and open it.
  2. You’ll want the system choice here.
  3. Click into system and security.
  4. In the system menu, click on the advanced system settings.
  5. In the advanced tab, find the performance section and hit settings.
  6. Across the top, click onto the data executive prevention tab.
  7. The section option will allow you to turn on data execution prevention for all programs and services except those that you choose.
  8. Click the add button and find your program’s .exe file.
  9. Add it to the list, hit apply, and then okay to save the changes.

Add program to data execution prevention list.

Run the program again and check to see if you still get the access violation at address error.

3. Consider Disabling User Account Control.

If you are trying to install or run a Java-based program, the access violation at address is more likely to occur. To fix this issue, you can temporarily disable the user account control to fix the error from coming up. This does have a slight security risk to it, so if you are uncomfortable with this method, disable user account control when you run your desired application and then turn it back on.

  1. In your computer’s search bar, type in “control panel” and open it.
  2. Find the “user accounts” and click into it – twice.
  3. Choose the last option, which is to change the settings of the user account controls.
  4. This window allows you to set when you get notified about changes to your computer. Move the slider down to “never notify” and hit okay.
  5. Try running your program now.

If your program runs, just remember to fix your user account settings once you are done with it for the day.

4. Double Check Your Software Isn’t in Read-Only Mode.

If your program is in a read-only mode, access is going to be denied and it won’t be able to launch or run effectively. Here is how to check this and fix it.

  1. Find the shortcut on your desktop and right-click on the file.
  2. Choose the properties option from the menu.
  3. Find the “general” tab located at the top of the window.
  4. Find the attributes section and make sure read-only is not checked.
  5. If it is checked, uncheck it.
  6. Hit apply/okay to save changes.
Make Sure Software is Not in Read-Only Mode

If your program does not have a desktop shortcut, you can either make one and follow the same steps or right-click on the .exe application file and follow the above steps.

5. Check Your RAM for Corruption.

If you ever had a heavy malware infection on your computer and it managed to cause damage to portions of your random access memory (RAM), then this could be the cause behind your access violation at address error. To check your RAM for corruption, do the following.

  • In your computer’s search bar, type in “Windows memory diagnostic”.
  • Run the program.
  • Choose the first option which is to restart and check for issues.
  • Let it run and wait for the results.
Windows Memory Diagnostic

If your RAM is corrupted, you should replace it.

6. Troubleshoot Your Hardware.

Some individuals have had luck in fixing the access violation at address error by resolving issues with their hardware.

  1. In your computer’s search bar, type in settings, and open it. Or if you are on Windows 10, press down the Windows key + I at the same time.
  2. Click on the “update and security” section.
  3. In the left-hand menu, find troubleshoot and click it.
  4. Run it and follow the on-screen instructions.

Once the troubleshooting has finished, try running your program again to see if the access violation error has been resolved.

How to Troubleshoot.

7. Run Your Program in Compatibility Mode.

If you are trying to run an older program, it may not be fully compatible with a newer operating system like Windows 10. If you are getting the access violation at address error and it’s pointing directly to the software program, then it may be a compatibility issue.

  1. Find your program’s shortcut on your desktop and right-click the file.
  2. Choose the properties option from the menu.
  3. At the top of the properties menu, find the compatibility tab.
  4. Choose to “run this program in compatibility mode” and select an older version of Windows, such as Windows 8.1/7.
  5. Hit apply and okay to save the changes.
  6. Run the program and see if the issue persists.
Run a Program in Compatibility Mode.

You may need to try different compatibility modes depending on how old the program is that you are running.

8. Reinstall the Problematic Software.

It is quite possible that the program you are trying to run has either had portions of it damaged or corrupted from crashes or improper saves or a recent update to it has caused issues. This, in turn, may be the reason behind why the program is now causing access violation errors. Try reinstalling the application to see if the problem persists. To uninstall, do the following.

  1. In your computer’s search bar, type in settings or hit the Windows key + I at the same time.
  2. Choose “apps” from the menu.
  3. Find the application that will not run or launch in the list.
  4. Click uninstall.

How to Uninstall a Program via the Control Panel.

You can also uninstall by going to your computer’s control panel, choosing the programs and features option, and clicking on the uninstall button. If you prefer this method, find the program in the list and hit the uninstall button. Once fully uninstalled, you will need to re-download the program and do a fresh install.

Только что установили новую операционную систему Windows 7, инсталлировали свои любимые приложения и теперь пытаетесь их запустить?  И вместо интерфейса программ видите сообщение об ошибке «Access violation at address….» или даже  «…память не может быть «read» либо «…память не может быть «written», а также «Прекращена работа программы ХХХХХХ…»? Растерялись? Не знаете, что делать? Давайте найдем выход вместе.

К возникновению этих ошибок могут приводить разнообразные сбои функционирования операционной системы как вызванные вирусами, так и конфликтом драйверов и другого программного обеспечения.
Наиболее надежный способ навсегда избавиться от ошибки «Access violation at address….» — это самостоятельно настроить DEP (Data Execution Prevention) или, выражаясь по-русски, ПВД (Предотвращение Выполнения Данных).

Решение 1. Желательное.  Изменение настроек DEP.
Нажмите правой кнопкой мыши по ярлыку «Мой компьютер» и перейдите в пункт «Свойства», после чего откройте «Дополнительные параметры системы». На вкладке «Дополнительно» в пункте «Быстродействие» нажмите на кнопку «Параметры» — вкладка «Предотвращение выполнения данных». Выберите «Включить DEP для всех программ и служб, кроме выбранных ниже» и, воспользовавшись кнопкой «Добавить…», сформируйте список программ, вызвавших появление одной из ошибок «Access violation at address….», «…память не может быть «read», «…память не может быть «written» или «Прекращена работа программы ХХХХХХ…». После чего кликните по кнопке «Применить» → ОК.

Решение 2. Нежелательное. Отключение DEP.
Нежелательное, поскольку DEP включена в Windows 7 совсем не зря и помогает предотвращать запуск вредоносного кода.
Вызовите команду выполнить, воспользовавшись комбинацией клавиш Win+R, и введите команду cmd, затем нажмите Enter. В открывшейся на экране монитора командной строке наберите следующую строчку bcdedit.exe /set {current} nx AlwaysOff и нажмите кнопку Enter. После появления сообщения системы о том, что операция успешно выполнена, перезагрузите операционную систему Windows 7. Теперь если вы вновь зайдете на вкладку «Предотвращение выполнения данных», то увидите, что инструменты для работы с DEP стали неактивны. Больше сообщения об ошибках появляться не должны.

Как видите, ничего сложного. Удачной работы!

Tags:

  • ?
  • access violation at address
  • data execution prevention
  • dep
  • read
  • windows 7
  • written
  • «…память не может быть «read»
  • «…память не может быть «written»
  • «access violation at address….»

Понравилась статья? Поделить с друзьями:
  • Как исправить ошибку access denied при входе на сайт
  • Как исправить ошибку a64f32fa 0x00000405
  • Как исправить ошибку a javascript error occurred in the main process на виндовс 7
  • Как исправить ошибку a javascript error occurred in the main process на windows 10
  • Как исправить ошибку 99 на терминале сбербанка