Форум программистов «Весельчак У»
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
Начало
Наши сайты
Галерея
Весельчак У
Наша Вики
Хранилище
Проекты
Правила
Правила форума
Правила русского языка
Помощь
Поиск
Календарь
Почта
Войти
Регистрация
Форум программистов «Весельчак У»
>
Операционные системы
>
Windows
> Тема:
Блокировка INT 3
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Блокировка INT 3 (Прочитано 6940 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
LemmonRus
Помогающий
Offline
В правильно заданном вопросе 90% ответа.
Блокировка INT 3
«
:
15-02-2011 10:57 »
Проблема такова:
В DLL через некоторое время работы идет прерывание INT 3.
Соответственно это ведет к вызову диалога с выбором действия и остановке работы программы.
Подскажите пожалуйста возможно ли блокирование данного прерывания.
И если возможно, как это можно сделать?
Записан
baldr
Команда клуба
Offline
Пол:
Дорогие россияне
Re: Блокировка INT 3
«
Ответ #1 :
15-02-2011 12:45 »
LemmonRus
, а что за DLL? Твоя собственная? Собранная в Debug?
INT 3 - это breakpoint, иными словами, точка останова.
Как вариант, можно заменить этот вызов командой NOP, но не факт, что это прокатит - контрольная сумма файла будет другая
Записан
Приличный компьютер всегда будет стоить дороже 1000 долларов, потому что 500 долларов - это не вполне прилично
LemmonRus
Помогающий
Offline
В правильно заданном вопросе 90% ответа.
Re: Блокировка INT 3
«
Ответ #2 :
15-02-2011 13:30 »
Dll собрана в релиз (исходников нет).
Этот бряк возникает из-за ошибки при работе с динамической памятью .
Самое забавное, насколько я понял из отладки под IDA ,данная ошибка не ведет к повреждению каких либо данных.По этому сама ошибка меня не волнует.Мне нужно придумать костыль, дабы система не обращала
внимание на это прерывание и программа использующая эту библиотеку продолжала работать.
Записан
baldr
Команда клуба
Offline
Пол:
Дорогие россияне
Re: Блокировка INT 3
«
Ответ #3 :
15-02-2011 13:40 »
Ну попробуй заменить этот вызов (0xCC) на NOP (в x86, вроде 0x90 - см
http://en.wikipedia.org/wiki/NOP
).
Напиши что получится - интересно..
Записан
Приличный компьютер всегда будет стоить дороже 1000 долларов, потому что 500 долларов - это не вполне прилично
LemmonRus
Помогающий
Offline
В правильно заданном вопросе 90% ответа.
Re: Блокировка INT 3
«
Ответ #4 :
15-02-2011 13:56 »
Цитата: baldr от 15-02-2011 13:40
Ну попробуй заменить этот вызов (0xCC) на NOP (в x86, вроде 0x90 - см
http://en.wikipedia.org/wiki/NOP
).
Напиши что получится - интересно..
Под IDA поменял "на ходу" программа без проблем продолжила работу.
По этому речь и идет о блокировке последствий ошибки в автоматическом режиме.
«
Последнее редактирование: 15-02-2011 14:21 от LemmonRus
»
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Форум программистов «Весельчак У»
>
Операционные системы
>
Windows
> Тема:
Блокировка INT 3
Загружается...