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


       

открыть файл при его существовании


  • 0PEN_ALWAYS=4 — открыть файл при его существовании и создать его если файла нет;

    TRUNCATE_EXISTING=5 — открыть файл с усечением его до нулевой длины; если файл не существует, то формируется ошибка;

    DwFlagsAndAttributes — флаги и атрибуты; этот параметр используется для задания характеристик создаваемого файла:


  • FILE_ATTRIBUTE_READ0NLY=OOOO0OOlh - файл только для чтения;


  • FILE_ATTRIBUTE_HIDDEN=00000002h - скрытый файл;


  • FILE_ATTRIBUTE_SYSTEM=00000004h - системный файл;


  • FILE_ATrRIBUTE_DIRECTORY=OO0000lOh - каталог;


  • FILE ATTRIBUTE ARCHIVE=00000020h - архивный ф'айл;


  • FILE_ATTRIBUTE_N0RMAL=00000080h - обычный файл для чтения-записи (этот атрибут нельзя комбинировать с другими);


  • FILE_ATTRIBUTE_TEMPORARY=0000Ol00h - создается временный файл (преимущество этого файла в том, что система стремится не записывать этот файл на диск, а работать с ним в памяти; этот атрибут выгодно комбинировать с флагом FILE_FLAG_DELETE_ON_CLOSE, тогда после закрытия файла в программе он будет удален, не оставив следов на диске, иначе, как и bMS DOS, программе придется «подчищать» за собой содержимое диска);


  • FILE_FLAG_WRITE_THR0UGH=80000000h - не использовать промежуточное кэширование при записи на диск, а все изменения записывать прямо на диск;


  • FILE_FLAG_NO_BUFFERING=20000000h - не использовать средства буферизации операционной системы;


  • FILE_FLAG_RANDOM_ACCESS=10000000h - прямой доступ к файлу (установка этого флага или флага


  • ILE_FLAG_SEQUENTIAL_SCAN позволяет оптимизировать системе процесс кэширования);


  • FILE_FLAG_SEQUENTIAL_SCAN=08000000h - последовательный доступ к файлу; 0


  • ILE_FLAG_DELETE_0N_CL0SE=04000000h - удалить файл после его закрытия (см. описание атрибута


  • ILEATTRIBUTETEMPORARY);


  • FILE_FLAG_0VERLAPPED=40000000h - асинхронный доступ к файлу (синхронность означает то, что программа, вызвавшая функцию для доступа к файлу, приостанавливается до тех пор, пока не закончит работу функция ввода-вывода);


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


  • При удачном завершении функция возвращает в регистре ЕАХ дескриптор нового файла. В случае неудачи функция возвращает в регистре ЕАХ значение NULL.


    Содержание  Назад  Вперед