Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Отладка программы из C & ASM

10K
12 декабря 2007 года
Shalfey
47 / / 10.03.2007
Предположим, что мы имеем программу на С, которая в середине своей работы вызывает функцию, реализованную на ассемблере (не вставка в С, а самостоятельный АСМ модуль). Ассемблерная функция содержится в объектном файле, который подключается в С-проект. С-код компилируется, линкуется с объектным АСМ-кодом и получается исполняемый файл. Я подгружаю его в отладчик. Часть, реализованная на С, меня не интересует. Мне нужно сразу прыгнуть на начало кода функции, которая изначально была реализована на АСМе. Как найти точку входа в функцию, реализованную на АСМе?
1.6K
12 декабря 2007 года
Vov4ick
476 / / 01.02.2007
Пользуйся точками останова. Если отладчик поддерживает отладочную информацию, просто находишь свою функцию по имени и ставишь на неё брякпоинт.
Второй вариант - в нужное место вставляешь int 3. При запуске в отладчике програма прервётся на этом месте и можно будет контролировать отладку.
261
12 декабря 2007 года
ahilles
1.5K / / 03.11.2005
расскажу как я делал: перед вызовом ассемблерной функции ставлю вызов MessageBox, при отладке ставлю брейкпоинт на функцию MessageBox, потом после остановки программы смотрю что после неё, первый call это и есть вызов твоей ассемблерной функции
 
Код:
push
...
push
call MessageBox
push
...
push
call Func1
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог