на главную | войти | регистрация | DMCA | контакты | справка | donate |      

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я


моя полка | жанры | рекомендуем | рейтинг книг | рейтинг авторов | впечатления | новое | форум | сборники | читалки | авторам | добавить



Листинг 13.2. Создание простого файла, открывающего другой файл

Очистка памяти и описание заголовка файла аналогично приведенному выше примеру, поэтому эту часть кода мы пропустим.

а 1010

db "D:\HELLO.EXE"

а 1040

db "SHELL32.DLL"

а 1050

db "KERNEL32.DLL"

а 1060

db 0,0,"ShellExecuteA"

а 1070

db 0,0,"ExitProcess"

а 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

xor bx,bx

push bx

push bx

push bx

db 68,10,10,40,0

push bx

push bx

db ff,15,0,10,40,0

push bx

db ff,15,8,10,40,0

m 1000 1200 200

m 0 400 100

n d:\rr.bin

r cx

400

w

Согласитесь, уже проще — ведь теперь не нужно вводить текстовую информацию в шестнадцатиричном виде. А если учесть еще одну возможность командной строки, то станет совершенно просто. Все дело в том, что совсем не обязательно вводить данный текст в отладчике, ведь можно воспользоваться Блокнотом, а потом просто скопировать введенный текст в буфер обмена, запустить debug.exe и нажать правую кнопку мыши в области его окна, чтобы отладчик начал обработку команд из буфера обмена. При этом только следует убедиться, что режим быстрой вставки в командной строке включен (DWORD-параметр Quick Edit, расположенный в ветви реестра HKEY_CURRENT_USER\Console, должен быть равен 1).


Простой пример | Недокументированные и малоизвестные возможности Windows XP | Другие команды программы