Сборник по задачам и примерам Assembler

     

Переименовать файл



Переименовать файл

Для переименования файла используется функция 56h.

Вход: АН = 56h; DS:DX — ASCIZ-имя существующего файла; ES:DI — ASCIZ-имя

нового файла; CL = маска атрибутов.

Выход: CF = 0 — при успешном переименовании; CF = 1 — АХ = код ошибки: 2 — файл не найден; 3 — несуществующий путь; 5 — доступ запрещен; 1 lh — устройства для старого и нового файлов не совпадают.

Функция 56h позволяет произвести перемещение между каталогами, не изменяя устройства.

;prg07_13.asm - программа перемещения между каталогами.

;не изменяя устройства функцией 56h.

¦

.data

fname_s db "maket.asm".О

point_fname_s dd fname_s

fname_d db "e:\maket.asm".0



point_fname_d dd fname_d

.code

;.....переместим файл из текущего в корневой каталог------

Ids dx.point_fname_s :формируем указатель на строку fname_s (исх. файл)

1 es di,point_fname_d ;формируем указатель на строку fname_d (целевой файл)

Imov ah.56h ;номер функции DOS int 21h

jc exit ;переход в случае ошибки

Получить дату и время создания или последней модификации файла

Получить/изменить дату и время создания или модификации файла можно с помощью подфункций функции 57h.

Вход: АХ = 5700h; ВХ = дескриптор файла.

Выход: если CF = 0: СХ = время, DX = дата. Если CF = 1: АХ = код ошибки (CF = п. 1 — недопустимый номер подфункции в А1; 6 — недопустимый дескриптор Время и дата файла получаются в следующих форматах.

Время

Дата

Биты Описание Биты Описание
15-11 Часы (0-23) 15-9 Год
10-5 Минуты 8-5 Месяц
4-0 Секунды 4-0 День



Переименовать файл

Вход: АН = 7156h; DS:DX — ASCIZ-имя существующего файла; ES:O1

имя нового файла; CL - маска атрибутов. Выход: CF = 0 — при успешном переименовании; CF = 1 — АХ = код ошибки: 2 —

файл не найден; 3 — несуществующий путь; 5 — доступ запрещен;

устройства для старого и нового файлов не совпадают.



Содержание раздела