В ОС 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ый можно взять из кода блокнота.