• Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;
    Начать пользоваться сервисом


  • Иллюстрированный самоучитель по задачам и примерам Assembler

    Работа с файлами в MS DOS (длинные имена)

    Рассмотренные выше функции MS DOS для работы с файлами и каталогами не поддерживают длинных имен. Для этого система Windows 95/98 предоставляет приложениям MS DOS аналогичные функции, но имеющие другие номера. Впрочем, при внимательном рассмотрении большинства из этих номеров, видно, какой из старых функций они соответствуют. Новые номера состоят из четырех цифр: первые две – 071h, последние две – номер старой функции. Для некоторых функций существуют особенности в их работе.

    Так, для поиска файлов по-прежнему используются две функции (по новой нумерации – 714eh и 714fh) прерывания 21h. Новые функции теперь возвращают информацию о файлах через специальную структуру WIN32_F INDDATA, адрес которой возвращается в качестве результата их работы.

    При работе с функциями, поддерживающими длинные имена файлов, используются еще две структуры: byhandle_file_information и filetime. Назначение структуры by_handle_file_iinformation и работу с ней мы рассмотрим при обсуждении функции MS DOS 71a6h. Структура filetime содержит 64-разрядное значение, которое определяет число 100-наносекундных интервалов, прошедших с 12:00 утра 1 января 1901 года.

    FILETIME Struc
    DwLowDateTime dd?
    :младшие 32 бита значения времени DwHighDateTime dd?
    :старшие 32 бита значения времени FILETIME
    ends
    

    Теперь приведем перечень функций прерывания 21h, работающих с файлами, которые имеют длинные имена. Для удобства дальнейшего рассмотрения в следующей таблице приведены соответствующие функции API WIN32 и "старые" функции прерывания 21h.

    Новая функция int 21h Старая функция int 21h Назначение Функция API Win32
    5704h   Получить дату и время последнего доступа GetFileTime
    5705h   Установить дату и время последнего доступа SetFileTime
    5706h   Получить дату и время создания GetFileTime
    5707h   Установить дату и время создания SetFileTime
    7139h 39h Создать каталог CreateDirectory
    713Ah 3ah Удалить каталог RemoveDirectory
    713Bh 3bh Изменить текущий каталог SetCurrentDirectory
    7141h 41h Удалить файл DeleteFile
    7143h 43h Получить или установить атрибуты файла GetFileAttributes,
    SetFileAttributes
    7147h 47h Получить текущий каталог GetCurrentDirectory
    714Eh 4Eh Найти первый файл FindFirstFile
    714Fh 4Fh Найти следующий файл FindNextFile
    7156h 56h Переименовать файл MoveFile
    7160h   Получить полный путь GetFullPathName
    7160h   Получить полный путь с краткими именами GetShortPathName
    7160h   Получить полный путь с длинными именами Отсутствует
    716Ch 3ch,
    3dh,
    5bh
    Создать или открыть файл CreateFile,
    OpenFile
    71A0h   Получить информацию о томе GetVolumelnfonnation
    71Alh   Завершить поиск FindClose
    71A6h   Получить информацию о файле по описателю GetFilelnformationByHandle
    71A7h   Преобразовать время файла в DOS-время FileTimeToDOSDateTime
    71A7h   Преобразовать DOS-время во время файла DOSDateTimeToFileTime
    71A8h   Создать псевдоним Отсутствует
    71A9h   Создать или открыть файл на сервере Отсутствует
    71AAh   Провести подмену Отсутствует
    71AAh   Отменить подмену Отсутствует
    71AAh   Получить информацию о подмене Отсутствует

    Рассмотрим наиболее интересные в контексте нашего изложения функции этой таблицы. Информацию по остальным функциям можно получить, в частности, из MSDN. Порядок рассмотрения будет от простых функций к сложным, так как это было в предыдущем разделе, посвященном функциям работы с файлами ДО DOS, имеющими короткие имена.

    Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.