Управление файловой системой
Функция DOS 39h: Создать директорию Вход: AH = 39h DS: DX -' адрес ASCIZ-строки с путем, в котором все директории, кроме последней, существуют. Для DOS 3.3 и более ранних версий длина всей строки не должна превышать 64 байта Выход: CF - 0, если директория создана. CF - 1 и АХ = 3, если путь не найден; 5, если доступ запрещен. Функция LFN39h: Создать директорию с длинным именем Вход: AX = 7139h DS: DX - адрес ASCIZ-строки с путем Выход: CF - 0, если директория создана. CF= 1 и АХ = код ошибки (7100h, если функция не поддерживается) Функция DOS 3Ah: Удалить, директорию Вход: АН = 3Ah DS: DX - адрес ASCIZ-строки с путем, где последняя директория будет удалена (только если она пустая, не является текущей, не занята командой SUBST) Выход: CF = 0, если директория удалена CF - 1 и АХ - 3, если путь не найден; 5, если доступ запрещен; 10h, если удаляемая директория - текущая Функция LFN 3Ah: Удалить директорию с длинным именем Вход: AX = 713Ah DS: DX - адрес строки с путем Выход: CF = 0, если Директория удалена, иначе CF - 1 и АХ -= код ошибки Функция DOS 47k. Определить текущую директорию Вход: AH = 47h DL = номер диска (00h - текущий, Olh - А и т. д.) DS: SI = 64-байтный буфер для текущего пути (ASCIZ-строка без имени диска, первого и последнего символа) Выход: CF = 0 и АХ = OlOOh, если операция выполнена CF = 1 и АХ - OFh, если указан несуществующий диск Функция LFN 47h. Определить текущую директорию с длинным именем Вход: AX = 7147h PL= номер диска Выход: CF - 0, если директория определена, иначе CF = 1 и АХ = код ошибки. Функция DOS 3Bh: Сменить директорию Вход: АН - 3Bh DS: DX = адрес 64-байтного ASCIZ-буфера с путем, который станет текущей директорией Выход: CF = 0, если директория изменена, иначе CF = 1 и АХ - 3 (путь не найден) Функция LFN3B: Сменить директорию с длинным именем Вход: AX = 713Bh DS: DX = адрес ASCIZ-буфера с путем Выход: CF - 0, если директория изменена, иначе CF = 1 и АХ = код ошибки Функция LFNOAOh: Получить информацию о разделе файловой системы VFAT Вход: AX = ZlA0h DS: DX = адрес ASCIZ-строкИ с именем раздела (например: db С: \", 0) ES: DI - адрес буфера для имени файловой системы (FAT, NTFS, CDFS) СХ - размер буфера в ES: DI (обычно 32 байта) Выход: CX = 0, АХ = OOOOh или 0200h ВХ = флаги файловой системы: СХ = максимальная длина имени файла (обычно 255) DX - максимальная длина пути (обычно 260) в Windows 95 SP1 возвращает OOOOh для CD-ROM CF = 1 и АХ = код ошибки, если произошла ошибка (7100h, если функция не поддерживается) Кроме того, при вызове любой функции LFN следует устанавливать CF в 1 для совместимости с ранними версиями DOS. Старые версии DOS не изменяли CF, так что в результате, если функция не поддерживается, CF останется равным 1. СОДЕРЖАНИЕ РАБОТЫ: Изучить приемы работы с файлами. Отладить примеры.
ВОПРОСЫ ВЫХОДНОГО КОНТРОЛЯ: 1. Перечислите функции для работыс файлами
|