Работа с файлами в Windows

В ОС MS-DOS программа работает с файлами в монопольном режиме. В Windows несколько

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

Приложение не должно держать файлы открытыми на протяжении всей своей работы. Вся работа с

файлами должна выполняться во время обработки одного сообщения. Нельзя открывать файл в обработчике одного сообщения и закрывать его в обработчике другого. Необходимо закрывать все файлы перед выводом на экран диалогового окна. Смысл ограничений сводится к запрету переключения на другое приложение, если текущее приложение не закрыло все свои файлы. В Windows можно использовать функции стандартные в библиотеке Си и С++. WINAPI определяет собственные функции для работы с файлами. Основные отличия заключаются в возможности управления доступом к открытому файлу со стороны других приложений. Кроме того в WINAPI определены стандартные диалоговые панели для выбора файлов. Функции WINAPI находятся в Windows, являются неотъемлемой частью ОС.

Функция для создания открытия и удаления файлов:

HFILE WINAPI OpenFile(LPSTR FileName, OFSTRUCT *openstruct, UNIT flag);

HFILE WINAPI _fopen(LPSTR FileName, int OpenMode);

Список режимов:

READ – только чтение

WRITE – только запись

REWRITE – для записи и чтения

OF_SHARE_COMPACT – открытие в режиме совместимости

OF_SHARE_EXCUSIVE – открытие в монопольном режиме

OF_SHARE_DENY_READ – запрет доступа других приложений на чтение

OF_SHARE_DENY_WRITE – запрет доступа других приложений на запись

OF_SHARE_DENY_NON – нет запрета со стороны других приложений.

- fclose – закрытие файла

- fread – чтение

- fwrite – запись

- ffseek – управление текущей позицией записи.

17 и 18ый можно взять из кода блокнота.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: