Руководства, Инструкции, Бланки

инструкция по адресу 0x4ebf74b2 img-1

инструкция по адресу 0x4ebf74b2

Категория: Инструкции

Описание

Ошибка приложения

Обсуждения

Инструкция по адресу "0x7c919902" обратилась по адресу "0x7db79204". Требуемые данные в память не помещены из-за ошибки ввода/вывода "0xc000009c"

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

Комп(бук) Acer Aspire 5551g
•AMD Phenom II X3 Mobile Proc. N830 (2.1 GHz)
•ATi Mobility Radeon HD 5470 up to 1789mb HyperMemory
•3 gb DDR3 Memory

Попробуй сделать полную проверку диска! chkdsk /f /r
Либо внешней программой, такой как акронис!
Винда сама грузится?

пасиб за совет)
винда грузится сама
пробовал сделать восстановление системы (оно было заблочено, пришлось через безопасный режим), не помогло =(
да и еще..комп сам Не вырубается..на сохранении данных виснет и все.
+врубается пол года, и все стили не отображаются
виснет все страшно х_Х

и когда уже включился и прогрузился снова выскакивает ошибка:
Инструкция по адресу "0xffbadd11" обратилась к памяти по адресу "0xffbadd11" память не может быть written)

chkdsk /f не помогло
/r не запускалось, сделал через безопасный режим, и сейчас вроде все отлично)
ошибка не выскакивает, и винда вроде работает нормально..)

спасибо большое еще раз за совет)
я уже отчаялся и думал переустанавливать винду)

Другие статьи

Помогите пожалуйста

Причина ошибки по адресу 0x6fe216e2 - уязвимость операционной системы, попытки удаленного использования которой червем Conficker (Downadup, Kido), на некоторых системах могут вызывать подобный эффект (сильное замедление работы компьютера и падение svchost.exe). Вредоносная программа пытается проникнуть на вашу систему с других зараженных компьютеров по локальной сети и/или через интернет.
Рекомендуется установить обновление, закрывающее данную уязвимость. В первом столбце таблицы нужно выбрать вашу операционную систему - это будет ссылка на скачивание обновления для вашего типа и версии ОС:

Бюллетень по безопасности Microsoft MS08-067 - критический. Уязвимость в службе сервера делает возможным удаленное выполнение кода (958644) (http://www.microsoft.com/rus/technet/security/Bulletin/MS08-067.mspx)

После выбора конкретной версии (типа) ОС, будет открыта страница для скачивания обновления. Необходимо в меню "Choose language" ("Выбор языка") выбрать язык вашей операционной системы. (Для английской версии - English, для русской, соответственно, - Russian). В противном случае установка обновления происходить не будет, оно будет останавливаться ошибкой с сообщением, что язык обновления не соответствует языку ОС. (Ошибка выглядит так: "Setup cannot update your Windows files because the language installed on your sistem is different from the update language.")

Экспрессия, спасибо вам большое. Загрузила, как вы написали, все очень доступно, даже для не очень в этом разбирающихся :). Перезагрузила. Буду наблюдать. Т.е. при хорошем раскладе надпись больше беспокоить не должна?
bibuh, и вам спасибо, доктор курелт у меня под рукой ;) Но и он ничего не нашел.

Экспрессия, подскажите пожалуйста, а табличка такого же плана: explorer.exe. Инструкция по адресу "0x77c47fd4" обратилась к памяти по адресу "0x11111111". Память не может быть "read". Это уже с какого поля ягода?
Выскочила, когда я порядок в папках наводила (копировала фильмы с диска Д на С). До этого было все в порядке. Старая больше не показывалась:)

Хмм. ну может быть это еденичная ошибка. По крайней мере, мне баг с такой адресацией неизвестен

Проблема с HT

Проблема с HT

Здравствуйте.
Я написал консольное клиент-серверное приложение на D7. Использовал такие юниты: SysUtils, WinSock, Windows, Classes.
При этом при включенном HT, запущенных 39 клиентах и 1-м сервере с периодичностью в 15 мин. клиенты "вываливаются" с MessageBox-ами с сообщениями об ошибках работы с памятью, причем с разными адресами. Примеры:
;-------
Инструкция по адресу "0x00140190" обратилась к памяти по адресу "0x98449844". Память не может быть "written".
"OK" -- завершение приложения
;-------
Инструкция по адресу "0x77f745cc" обратилась к памяти по адресу "0xffffffff". Память не может быть "read". "OK" -- завершение приложения
;-------
Инструкция по адресу "0x00140199" обратилась к памяти по адресу "0x00002930". Память не может быть "written".
"OK" -- завершение приложения
;-------
Инструкция по адресу "0x77f745cc" обратилась к памяти по адресу "0x00000007". Память не может быть "written".
"OK" -- завершение приложения
;-------
Инструкция по адресу "0x00000000" обратилась к памяти по адресу "0x00000000". Память не может быть "read". "OK" -- завершение приложения
;-------
Причем частота появления ошибок увеличивается при активном параллельном использовании "тяжелых" сторонних программ во время проведения теста (Photoshop, FineReader. ), особенно при их запуске/завершении.
Использование SetThreadAffinityMask не помогло. Привязал всех клиентов на машинке с P4 3.0 GHz HT к 0-му процессору командой SetThreadAffinityMask(GetCurrentThread, 1). ОС - WinXP Pro SP2. Результат тот же.
Перезагружаю машинку, выключаю в BIOS-е HT, провожу тот же тест - никаких сообщений об ошибках. Все чисто. Что посоветуете, какие мысли по поводу вышеизложенного?

P.S>
- при включенном HT тестирование приводит к вышеуказанным ошибкам;
- при выключенном HT программа может работать в условиях тестирования сутки, и ни одной ошибки не возникает.
В своей программе я не использую ф-ий работы с многопроцессорными системами. Более того, можно подумать, что я неправильно синхронизирую потоки, и такая синхронизация "проходит" на однопроцессорной системе, но не "проходит" на многопроцессорной. Но у меня и поток один. Нечего там синхронизировать.


> Что посоветуете, какие мысли по поводу вышеизложенного?

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

В NT (про другие не знаю) для работы с сокетом запускается дополнительный поток.
Запускается автоматом при инициализации Windows Sockets service provider,
с которым будет потом работать клиент.
И как не странно этот поток принадлежит твоему процессу :)

Спасибо. Действительно, моя программа использует только 1 поток, в то время, как в диспетчере задач их отображается 2 шт. Но, как я понял, к этому потоку я доступа не имею. Как тогда осуществлять синхронизацию?

Интересная информация:
при включенном HT под Win2k Pro SP4 Rus и Windows 2003 Server Standard Edition Rus в тех же условиях тестирования (кроме ОС, конечно), на том же железе никаких ошибок не возникало. Похоже, это проблемки с WinXP Pro SP2. Но как там синхронизировать потоки, если второй поток - не мой?

> Но у меня и поток один. Нечего там синхронизировать.

В некоторые функций WSA передаётся адрес callback-функции в качестве параметра (это WSAAccept и overlapped-версии WSASend, WSASendTo, WSARecv, WSARecvFrom). если какая-то часть пользовательского кода могла "попасть в другой поток", то это callback-функции; в них и стоит проверить GetCurrentThreadId, совпадает ли она с первичной нитью.
Если callback-функции имеются действительно вызываются в другом потоке, то важной частью межпоточной синхронизации будет установка переменной IsMultiThread в True.

Вообще, какой режим сокетов используется, используется ли overlapped ?

Используется 1 поток, блокирующие сокеты, все ф-ии - WinSock 1.1, callback-функции не используются, overlapped не используется. Более подробно о моем приложении и принципах его реализации Вы можете прочитать здесь:
http://www.delphimaster.net/view/6-1157482660/

Память: 0.74 MB
Время: 0.106 c

Инструкция по адресу - 0x6fe216e2 - обратилась к памяти по адресу - 0x01e0005c

Инструкция по адресу "0x6fe216e2" обратилась к памяти по адресу "0x01e0005c".

Память не может быть "written". Вчем проблема Постоянно выскакиевает эта ошибка. Что посоветуете?

Голосование за лучший ответ

Shark Просветленный (26468) 6 лет назад

Причина возникновения ошибки довольно проста: менеджер виртуальной памяти обнаруживает попытку доступа к страницам памяти, доступ к которым не разрешён для данного процесса. Ошибка эта, разумеется, не смертельная, поэтому выдаётся стандартное сообщение об ошибке "Память не может быть. ". Если говорить упрощённо, то для каждой программы в памяти выделяется некое пространство. И если приложение начинает лезть за пределы этого пространства, т. е. пытается оттуда что-то прочитать (read) или что-то записать туда (written), то появится такая ошибка. Microsoft потому и не даёт никаких рекомендаций по устранению этой ошибки, ведь это не её вина, что какие-то пользовательские программы не могут адекватно распоряжаться выданной им памятью. http://forum.igromania.ru/showthread.php?t=63795

Евгений Клаузер Мыслитель (8637) 6 лет назад

Включить функцию DEP в звере или где отключина.
В свойствах моего компьютера выбрать вверху Дополнительно и нажать кнопку "Параметры" Загруски и востановления (самая нижняя). В открывшемся окне нажмите кнопку "Правка", чтобы открыть boot.ini для редактирования от туда все удали, а это:
---------------------------------------------------------------------------------------------------------------------------
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect
---------------------------------------------------------------------------------------------------------------------------
все скопируй и сохрани.
Для применения изменений необходимо перезагрузить компьютер.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Это если память не может быть: read/
Если тебе после включения надо отключить DEP, для определенной программы то
- Cвойства компьютера
- Дополнительно
- "Визуально эффекты, использование процессора, оперативной и виртуальной памяти", жмеш Параметры
- Предотвращение выполнения данных
- Поставиш галочу "Включить DEP для всех программ и служб, кроме выбранных ниже" и выбиреш программу для какой нужно отключить DEP.
И ошибки больше не будет.

Ошибка - Сообщение об ошибке - память не может быть read (written)

Здравствуйте!
Последнее время в WinXP pro SP2 corporate edition мне не дает покоя сообщение:
"Инструкция по адресу *x******** обратилась к памяти по адресу *x********.
Память не может быть read(write)"
ОК-закрыть ОТМЕНА-отладка
Это сообщение может появляться как в разные моменты времени например при оцифровке видео; так и при четко определенных действиях например в играх:
1)Drakan order of the flame при попытке начать новую игру
2)NFS 5 при нажатии Alt+Tab (память не может быть write)
3)Dark messiah при переходе на следующий уровень
проблема не возникала на других машинах где я устанавливал эти игры.
Мне кажется что природа описанных сообщений одинакова

Я перечитал все статьи которые нашел в Интернет по решению данной проблемы и пытался проделать все что предлагалось в качестве решения.
Я пытался решать эту проблему так:

1) Я переустанавливал несколько раз ОС (правда, использовал похожие дистрибутивы)
Первый раз Win XP SP2 Corporate edition
Второй раз Win XP pre SP3 Corporate edition
2) Первым делом я проверил память Memtest 86, почистил контакты резинкой, менял местами планки, проверял планки по одной штуке. Memtest 86 ошибок не нашел, манипуляции с планками и слотами результата не дали.
3) Потом я Изменял настройки файла подкачки: увеличивал, уменьшал размер, включал авто определение, отключал его вообще. Безрезультатно
4) Менял настройки DEP (все возможные) не помогло
5) По очереди завершал процессы (те которые можно завершить) и провоцировал ошибку,
по очереди останавливал службы (те которые можно остановить) и провоцировал ошибку
не помогло.
6) Закачивал обновления…

Интересно то, что Drakan выдает все время одинаковые адреса:
Инструкция по адресу 0х1013ас3в обратилась к памяти 0х0000001с

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

Пожалуйста, подскажите, как узнать с чем связано появление этой ошибки.


MB. Asus CUSL2-C Intel 815EP
Processor: P III 1000 Mh
HDD. 1 Samsung SP 1654M
2 WDC WD400JB
RAM. 1 PC 133 256 Mb 16 Ch
2 PC 133 128 Mb 8 Ch
Video: MSI NX6600 GT 128 Mb Agp

Сообщения: 254
Благодарности: 6

Процессор: Intel Core2Duo E6320

Материнская плата: Usus P5B

Память: DDR2 2048 gb

HDD: WDC WD3200AAKS-00SBA0, 320 GB, SATA II, WDC WD10EARS-00Y5B1, 1TB

Видеокарта: GeForce 8600 GT

Звук: SoundMAX HD Audio

Блок питания: 350W

CD/DVD: Asus DVD-RW

Монитор: Samsung 931 BF, 19

Антиаирусом все проверь (у меня такое было). форматни С. Поставь Win XP Prof. SP 2

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

Сообщения: 3485
Благодарности: 507

Romani4 Видишь ли, сбои у тебя происходят при нагрузке на видео (игры, видеообработка). Я бы копал в сторону видеокарты. Попробуй поменять драйвера, замеряй температуру, попробуй другую видеокарту.
Для твоей слабенкой конфигурации видеокарта мощновата будет. Ей скорее всего не хватает питания.
Попробуй обновить БИОС, многие производители патчат для увеличения напряжения на слот AGP.
Могут быть проблемы со слабым блоком питания.
Размер вирутальной памяти поставь " по выбору системы".

-------
Просьба обращаться на "ты".
Посты на абракадарском языке в игноре.

Сообщения: 2300
Благодарности: 270

Процессор: Intel Core 2 Duo E8400

Материнская плата: Gigabyte GA-P35-S3

Память: Kingmax KLED48F-A8KI5 DDR2-1066 МГц 1Гб x 4

HDD: WDC WD5000AAKS-00YGA0 (500 Гб), ST3320620AS (320 Гб)

Видеокарта: Asus HD4850 1Gb

Звук: Realtek ALC885/889A

Блок питания: Hiper 580 W

CD/DVD: ASUS DRW-1814BLT

Монитор: Samsung SyncMaster 245BW 24" LCD 1920x1200х60 Гц

ОС: OpenSUSE 11.1 + SLES

Прочее: Acer Aspire 7520G

Romani4. я уже эту информацию размещал ранее. Попробуй, должно помочь:

Память не может быть "read"

Данная ошибка возникает при обращении какой-либо программы или модуля программы напрямую к закрытому участку памяти.
Во всем, как выяснилось, виновата функция "Предотвращение выполнения данных" (DEP).
Чтобы не запутать ни Вас ни себя, просто процитирую
"В отличие от брандмауэра или антивирусного программного обеспечения функция DEP не препятствует установке
потенциально опасных программ на компьютер, а только следит за тем, как программы используют память, и после
установки Service Pack 2 DEP по умолчанию включена для основных программ и служб Windows. Cуществует четыре
варианта ее настройки.

OptIn(по умолчанию) В этой конфигурации под действие функции DEP подпадают только основные системные программы
и службы.
OptOutDEP включена для всех процессов и приложений, кроме тех, которые вручную добавлены пользователем в список
исключений.
AlwaysOn В этом режиме DEP включена всегда для системы в целом, всех процессов и приложений, невзирая на установки
пользователя или производителя ПО.
AlwaysOffDEP полностью отключена.

NoExecute =OptIn
NoExecute =OptOut
NoExecute =AlwaysOn
NoExecute =AlwaysOff


Для редактирования boot.ini нужно: Пуск => Выполнить => %systemdrive%\Boot.ini

Спалю железо за 3-и минуты! Убью систему за 3-и секунды!

Сообщения: 10
Благодарности: 1

Я только что запускал машину в safe mode при этом отключил DEP, из всех служб работали следующие:
1) Plug&Play,
2) Дисплей логических дисков,
3 Журнал событий,
4) Запуск серверных процессов,
5) Удаленный вызов процедур

При этом я двумя способами вызвал эту ошибку:
1) Запустил Lingvo 11 6 языков, При изменении языка переводимого текста появляется сообщение об ошибке в модуле TryAndBuyProtection.cpp при нажатии ОК появляется сообщение "Память не может быть read" (в не safe mode ошибка появляется тоже)
2) В свойствах монитора выбрал экранную заставку Ancient Castle 3D нажал просмотр и естественно получил сообщение что не найден графический адаптер (Safe mode все таки!). а после того как нажал ОК получил сообщение об ошибке "Память не может быть read" " (в не safe mode ошибка не возникает)


Обратил внимание на то что всегда когда появляется эта ошибка то адрес памяти к которой обратилась инструкция какойто странный: 0х000000** т.е. меняются в нем только последние два значения(а бывает вообще все нули).

Причем для одинаковых программ адреса все время одинаковы! (Где-то я читал что для Windows это не свойственно)

Потом я с помощью инструмента Microsoft Spy ++ посмотрел свойства окошка с ошибкой и на вкладке Process есть две ссылки на Process ID и Theread ID которые указывают на процесс CSRSS (может это поможет разобратся… )

Кстати по поводу того что ошибка возникает при нагрузке на видео могу сказать что намного более требовательные игрушки идут нормально. И на сколько я понимаю в Safe mode видео адаптер практически не задействован (но ошибка появляется)

Пожалуйста, подскажите, как узнать с чем связано появление этой ошибки.

Последний раз редактировалось Romani4, 19-09-2007 в 01:02.

yurfed Необязательно DEP, даже в редких случаях. Хотя бы потому, что в основном у людей DEP включен и при работе с одним и тем же софтом никаких "ошибок" не возникает. Как раз причин масса.
Вот пример http://forum.ixbt.com/topic.cgi?id=27:6623
В конце концов и конденсаторы на матплате нужно посмотреть. И не только на матплате, но и в блоке питания.
Оборудование то древнее.

-------
Просьба обращаться на "ты".
Посты на абракадарском языке в игноре.

Это сообщение посчитали полезным следующие участники: