Шаг 109.
Отладчик W32Dasm. Загрузка программ для отладки

    На этом шаге мы рассмотрим возможности отладчика для отладки программ.

    Загрузить модуль для отладки можно двумя способами. С помощью команды Debug | Load Process загружается для отладки уже дизассемблированный модуль. Команда Debug | Attach to an Active Process позволяет "подсоединяться" и отлаживать процесс, находящийся в памяти. После загрузки отладчика на экране появляются два окна. Первое окно информационное (рисунок 1), в документации оно называется "нижним левым окном отладчика".


Рис.1. Первое информационное окно отладчика

    Второе окно управляющее (рисунок 2), называемое в документации "нижним правым окном отладчика".


Рис.2. Второе управляющее окно отладчика

    Информационное окно содержит несколько окон-списков:

    Позже мы объясним также значения кнопок этого окна.

    Обратимся теперь к управляющему окну. Кнопка Run запускает загруженную в отладчик программу, кнопка Pause приостанавливает работу программы, кнопка Terminate останавливает выполнение программы и выгружает ее из отладчика. Кнопки Step Over и Step Into используются для пошагового исполнения программы. Первая кнопка, выполняя инструкции, "перескакивает" код процедур и цепочечные команды с повторением, вторая кнопка выполняет все инструкции последовательно. Кроме того, имеются кнопки AutoStep Over и AutoStep Into для автоматического пошагового выполнения программы. В случае API-функций даже использование Step Into не приведет к пошаговому выполнению кода функции в силу того, что код функции не доступен для пользовательских программ. Очень удобно, что при пошаговом выполнении происходит передвижение не только в окне отладчика, но и в окне дизассемблера.

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

    На следующем шаге мы рассмотрим работу с DLL.




Предыдущий шаг Содержание Следующий шаг