Глава 13 Программа Debug
Глава 13
Программа Debug
Следующей возможностью, которую хотелось бы описать, является способ создания программ Win32 с помощью стандартного отладчика командной строки debug.exe.
Но сначала хотелось бы пояснить, зачем вообще упоминается этот отладчик. Согласитесь, существуют компьютеры общего пользования, на которые пользователь не имеет права ничего устанавливать. На них нет привода компакт-дисков, дисковода, Интернета или нельзя скачивать из Интернета файлы. В общем, администраторы сделали так, чтобы нельзя было устанавливать свои файлы, в том числе вирусы, перехватчики клавиатуры, троянские кони. Но уже стало стандартом, что программа debug.exe входит в поставку Windows и о ней теперь знает все меньше и меньше администраторов…
Это был тонкий намек администраторам подобных общественных компьютеров.
ПРИМЕЧАНИЕ
Отладчик debug.exe входит в стандартную поставку всех версий Windows (находится в каталоге %systemroot%system32) и предназначен для отладки DOS-приложений на языке «Ассемблер» или машинном языке.
Итак, запустим командную строку и введем название команды — debug.exe. После этого мы попадем в среду программы, о чем можно узнать из появившегося приветствия в виде горизонтального курсора.
Теперь посмотрим на сам код простенькой программы Win32, вызывающей стандартное окно приветствия.
ПРИМЕЧАНИЕ
Данный код был взят из статьи журнала «Ваш компьютер» за 2003 год.
Листинг 13.1. Программа Win32 типа Hello, World!
f 0 400 0
f1000 1200 0
a0
db4d,5a
а 3с db40
а 40
db 50,45,0,0
dw 14c,1
а 54
dw e0,10f,10b
а 68 dw 10d0
a 74
dw 0,40,1000,0,200,0
dw 4,0,0,0,4
a 90
dw 2000,0,200,0,0,0,2
a b4 dw 10
a c0
dw 1090,0,3c
a 140
dw 1000,0,1000,0,200,0,200,0
a 15c
dw 20,e000
a 1010
db 54,68,69,73,20,54,69,74,6c,65,3f
a 1020
db 54,68,69,73,20,4d,65,73,73,61,67,65,3f
a 1040
db 55,53,45,52,33,32,2e,64,6c,6c
a 1050
db 4b,45,52,4e,45,4c,33,32,2e,64,6c,6c
a 1060
db 0,0,4d,65,73,73,61,67,65,42,6f,78,41
а 1070
db 0,0,45,78,69,74,50,72,6f,63,65,73,73
а 1080
dw 1060,0,0,0,1070,0,0,0
а 1000
dw 1060,0,0,0,1070,0,0,0
а 1090
dw 1080,0,0,0,0,0,1040,0,1000,0
dw 1088,0,0,0,0,0,1050,0,1008,0
a 10d0
db 6a,24
db 68,10,10,40,0
db 68,20,10,40,0
db 6a,0
db ff,15,0,10,40,0
db 6a,0
db ff,15,8,10,40,0
m 1000 1200 200
m 0 400 100
n «путь и имя создаваемого файла.bin»
r cx 400 w
q
Вот и весь код программы, написанной на машинном языке и вызывающей окно, отображенное на рис. 13.1.
Рис. 13.1 Результат выполнения программы