![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
neosapient |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 27.6.2008 Пользователь №: 216 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Здравствуйте.
Есть программа под Windows, которая умеет подгружать dll-патчи. Я делаю свой патч, но в программу встроена защита от отладки. Когда я пытаюсь приаттачиться к процессу, чтобы отладить dll, программа падает замертво Разработчик утверждает, что именно так и работат защита. Нужен програмный комплекс псевдоотладки работающий в два этапа: 1) Подготовка. Цель: наполнить исходник логами и встроить механизм работы с отладчиком. Я "скармливаю" псевдоотладчику исходный код на С++. Псевдоотладчик парсит исходный код. Для каждой строчки кода вставляет лог/коментарий. Так же в исходный код вставляется серверная часть моей dll, для будущего взаимодействия с окном отладчика. Расставляются брейкпоинты, проходя через которые отладчик остановиться. Кстати, на против любой строчки кода должны устанавливаться брейкпоинты, только неактивные. 2) Рабочий режим. Цель: трассировка приложения в окне отладчика (по логам) Из окна отладчика я должен подключиться к серверной части моей dll. Далее привычная отладка приложения Есть ли такой псевдо отладчик? Чтобы сам в исходниках вставлял логи и, далее, работал как обычный отладчик? P.S. Windows XP Visual Studio 2008 |
|
|
![]() |
Iron Bug |
![]()
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
отладчики в венде реализуются через запуск приложения с флагом отладки. если программа-хост определяет наличие отладчика по флагу, то отладка в принципе невозможна (во всяком случае, без хака программы). есть отладчики ядра, которые софт не видит, но про них можно целую отдельную главу написать и это не по теме на кросслпатформенном форуме. если охота копать в эту сторону, то нужно искать по именам DbgPrint user mode. это отладка через виртуальные машины или на двух компах, со спец. оборудованием. можно также заюзать утильку DebugView: останавливаться она не будет, но сообщения можно смотреть в риал-тайме и всячески фильтровать. DebugView запустится под XP без проблем и даже можно будет отлаживаться на одной машине, без виртуалок.
а так, логи можно самому вставить в дебажный код и смотреть в своих логах нужную инфу, запускаясь без отладчика. просто и без геморроя. Сообщение отредактировал Iron Bug - 10.3.2011, 16:17 |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 24.6.2025, 12:23 |