Создаем вирус и антивирус
Шрифт:
Выход:
CF=0, если функция выполнена успешно
BX, DX не сохранены
CF=1, если при выполнении функции возникли ошибки
AX – код ошибкиОписание. Данная функция загружает в память и запускает программу, имя которой указано в регистрах DS:DX. Запущенная программа после завершения работы возвратит управление запускаемой. Если диск или путь не указаны, принимаются значения по умолчанию. ES:BX указывает на блок памяти, подготовленный как EPB, формат которого зависит от запрошенной подфункции в AL.
Версии: DOS 2.00 и выше. DOS, функция 4Ch Завершить
Вход:
AH=4Ch
AL – код выходаОписание. Возвращает управление от порожденного процесса его родителю, устанавливая код выхода (его можно опросить функцией 4Dh). Управление передается по адресу завершения в PSP завершающейся программы. Векторы Ctrl-Break и Critical Error восстанавливаются к старым адресам, сохраненным в родительском PSP.
Примечание. Значение ERRORLEVEL (используемое в пакетных файлах DOS) можно использовать для проверки кода выхода самой последней программы.
Версии: DOS 2.00 и выше. DOS, функция 4Dh Получить код выхода программы
Вход:
AH=4DhВыход:
AH – код выхода последнего завершившегося процесса
AH=00h – нормальное завершение
AH=01h – завершение через Ctrl-Break INT 23h
AH=02h – завершение по критической ошибке устройства INT 24h
AH=03h – завершение через функцию 31h
AL – код выходаОписание. Возвращает код выхода последнего из завершившихся процессов. Эта функция возвращает правильную информацию только однажды для каждого завершившегося процесса.
Версии: DOS 2.00 и выше. DOS, функция 4Eh Найти первый совпадающий файл
Вход:
AH=4Eh
DS:DX – адрес строки ASCIZ с именем файла (допускается использовать символы «?» и «*»)
CX – атрибут файла для сравненияВыход:
CF=0, если функция выполнена успешно
DTA заполнена данными (Таблица Б-10)
CF=1, если при выполнении функции возникли ошибки
AX – код ошибкиОписание. Если диск и/или путь не указаны, принимаются значения по умолчанию. Обобщенные символы «*» и «?» допускается использовать в имени файла и расширении.
Версии: DOS 2.00 и выше. DOS, функция 4Fh Найти следующий совпадающий файл
Вход:
AH=4Fh
DS:DX – адрес данных, возвращенных предыдущей 4Eh (Найти первый файл)
Таблица Б-10. Формат данных в DTAВыход:
CF=0, если функция выполнена успешно
DTA заполнена данными
CF=1, если при выполнении функции возникли ошибки
AX – код ошибкиОписание. Эту функцию можно использовать после вызова 4Eh. Следующее имя файла, совпадающее по обобщенному имени и атрибуту файла, копируется в буфер по адресу DS:DX вместе с другой информацией (Таблица Б-10).
Примечание. Параметр DS:DX добавлен в DOS 3.0.
Версии: DOS 2.00 и выше. DOS, функция 52h Получить
Вход:
AH=52hВыход: ES:BX – адрес векторной таблицы связи (Таблица Б-11)
Описание. Данная функция возвращает адрес векторной таблицы связи.
Версии: DOS 2.00 и выше. DOS, функция 54h Получить переключатель верификации DOS
Вход:
AH=54hВыход:
AL=00h, если верификация выключена (OFF)
AL=01h, если верификация включена (ON)Описание. Возвращает текущий статус верификации записи DOS. Если в AL возвращается 1, то DOS считывает обратно каждый сектор, записываемый на диск, чтобы проверить правильность записи. Функция DOS 2Eh позволяет установить/изменить режим верификации.
Версии: DOS 2.00 и выше. Таблица Б-11. Формат векторной таблицы связи
Вход:
AH=56h
DS:DX – адрес старого ASCIZ имени (путь/имя существующего файла)
ES:DI – адрес нового ASCIZ имени (новые путь/имя)Выход:
CF=0, если функция выполнена успешно
CF=1, если при выполнении функции возникли ошибки
AX – код ошибкиОписание. Старое имя DS:DX должно существовать и не может содержать обобщенных символов. Диск и путь необязательны (если они не указаны, принимаются значения по умолчанию). Новое имя ES:DI должно описывать несуществующий файл. Если указан диск, он должен быть тем же, что и в старом имени. Если диск или путь не указаны, принимаются текущие. Если старое и новое имя содержат разные пути (явные или принятые по умолчанию), то элемент оглавления для файла перемещается в оглавление, указанное в новом имени.
Версии: DOS 2.00 и выше. DOS, функция 57h Установить/опросить дату/время файла
Вход:
AH=57h
AL=00h – получить дату/время файла
AL=01h – установить дату/время файла
BX – описатель файла (handle)
CX (если AL=1) – новая отметка времени в формате время файла
DX (если AL=1) – новая отметка даты в формате дата файлаВыход:
CF=0, если функция выполнена успешно
CX – (если при вызове AL=0) отметка времени файла в формате время/дата файла (Таблица Б-12)
Таблица Б-12. Формат времени файлаDX – (если при вызове AL=0) отметка даты файла в формате время/дата файла (Таблица Б-13)
Таблица Б-13. Формат даты файлаCF=1, если при выполнении функции возникли ошибки
AX – код ошибки