Главная страница

Форум: "WinAPI";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];
Вниз

Как обойти Access violation при попытке записи(+)   Найти похожие ветки 


mangoost   (2001-11-05 12:06) [0]

в определенную ячейку памяти?



Digitman   (2001-11-05 12:56) [1]

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



Dimka Maslov   (2001-11-05 13:47) [2]

>mangoost
Любое приложение для виндов может писать и читать только в те ячйки памяти, куда ему позволяет операционная система, а не туда, куда захочет программист. Как ты думаешь почему в Delphi исчезли массивы Mem и Port? Видимо не просто так.



paul_shmakov   (2001-11-05 17:21) [3]

Можно с помощью VirtualQuery сначала проверить, доступна ли станица памяти, на кот. расположена "ячейка", для записи. Если нет, а очень нужно, то с помощью VirtualProtect поменять защиту региона.



paul_shmakov   (2001-11-06 13:33) [4]

Сорри, про VirtualProtect - это я вчера немного нагнал (я писать начал, потом меня отвлекли, и через 15 мин я закончил полной чепухой :)
Перво-наперво, нужно действительно VirtualQuery проверить: 1) выделена ли память; 2) доступна ли она для записи.
Если память не выделена, то можно ее, конечно, выделить, хотя это глупость какая-то.
А вот если память выделена, но read only, то можно попытаться изменить защиту страницы (VirtualProtect).





Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Наверх

Top.Mail.Ru     Яндекс.Метрика













Память: 0.77 MB
Время: 0.026 c
7-22431
Pasha
2001-09-21 15:58
2002.01.08
Как снять с звуковой карты, форму сигнала.


14-22402
Darker
2001-11-08 12:26
2002.01.08
Ищу человека с ником


14-22369
Victor Tsay
2001-11-08 09:11
2002.01.08
Как в редакторе Делфи смещать блоки текста?


3-21937
ANDREY196
2001-12-04 18:24
2002.01.08
Как мне поменять цвет в определённой строке таблице в DBGRID


3-21996
vinni2000
2001-12-06 11:47
2002.01.08
Как с помощью запроса выбрать данные из Query





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский