Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скляров И. Изучаем Assembler за 7 дней (2010).pdf
Скачиваний:
1646
Добавлен:
23.02.2015
Размер:
2.11 Mб
Скачать

http://www.sklyaroff.ru

130

ничего не возвращается Пример:

...

mov ah,0Dh ; номер функции int 21h

...

Функция сбрасывает все внутренние буферы, связанные с файлом на диск, закрывает файл и освобождает для последующего использования дескриптор. Если файл изменялся, то обновляются дата и время создания, а также размер файла.

6.4.3. Закрытие и удаление файла

3Eh (INT 21h) — закрыть файл

Входные данные:

AH=3Eh

BX=дескриптор

Возвращаемые значения:

CF=0, если функция успешно выполнена

CF=1 и AX=6, если неправильный дескриптор

41h (INT 21h) — удалить файл

Удаляет файл из указанного каталога.

Входные данные:

AH=41h

DS:DX = адрес ASCIIZ-строки с полным именем файла

Возвращаемые значения:

CF=0, если функция не выполнена

CF=1 и AX=02h, если файл не найден

CF=1 и AX=03h, если путь не найден CF=1 и AX=05h, если доступ запрещен Примечание. Функция не выполняется, если:

отсутствует хотя бы один элемент пути;

указанный файл существует, но имеет атрибут "только для чтения" (проверить и изменить атрибут можно с помощью функции 43h прерывания INT 21h).

Функция 41h не позволяет использовать маски (символы * и ? в имени файла) для удаления сразу нескольких файлов, но начиная с DOS 7.0, обновленная функция способна работать с масками.

LFN 41h (INT 21h) — удалить файл c длинным именем5

Входные данные:

AX=7141h

DS:DX = адрес ASCIIZ-строки с длинным именем файла

SI=0000h: маски не разрешены и атрибуты в CX игнорируются

SI=0001h: маски в имени файла и атрибуты в CX разрешены:

5 LFN-функции — это функции MS-DOS, работающие с длинными именами файлов (LFN, Long File Names — Длинные Имена Файлов), длиной до 255 символов. Этот набор функций впервые появился в DOS 7.0 вместе с Windows 95. Ранее функции MS-DOS работали только с файлами формата 8.3 (восемь символов имени и три символа расширения).