Функции работы с файлами в UNIX

Лекция № 8

Поиск всего подряд, соответствующее имени

Поиск первого файла, соответствующего маске

Удаление файла

Переименование файла

BOOL MoveFileEx(

LPCTSTR SrcFileName,

LPCTSTR DestFileName,

DWORD Flags)

Флаги:

MOVEFILE_COPY_ALLOWED — разрешено копирование

MOVEFILE_CREATE_HARDLINK — существует жесткая ссылка

MOVEFILE_DELAY_UNTIL_REROOT — отложить переименование до перезагрузки

MOVEFILE_REPLACE_EXISTING — разрешить перезапись существующего файла

MOVEFILE_WRITE_THROUGH

BOOL DeleteFile (LCPTSTR FileName)

HANDLE FindFirstFile (

LPCTSTR FileName,

LPWIN32_FIND_DATA FileData)

(возвращается дескриптор, который надо освободить)

BOOL FindNextFile (

HANDLE h,

LPWIN32_FIND_DATA FileData)

(Результат: нашли, не нашли)

BOOL FindClose (HANDLE)

Определяет: является ли файл исполняемым, если да, то определяет тип исполняемого файла

BOOL GetBinarytype(

LPCTSTR AppName,

LPDWORD BinType)

Типы:

SCS_WIN32_BINARY

SCS_WIN64_BINARY

SCS_DOS_BINARY

SCS_OS216_BINARY

SCS_PIF_BINARY — устаревший вариант ярлыка на старую DOS программу

SCS_POSIX_BINARY — исполняемый файл, требующий POSIX

SCS_WOW_BINARY — 16 битные приложения от Windows 3.1

BOOL CreateDirectory (

LPCTSTR DirName, // имя каталога

LPSCURITY_ATTRIBUTES Attr) // атрибуты безопасности

int open (

const char *fname,

int flags,

mdoe_t mode) // режимы

Флаги:

O_CERATE — создать, если нету.

O_EXCL — используется вместе с O_CREATE — должны только создать, если файл существует — ошибка.

O_TRUNC — обрезать содержимое файла при открытии

O_APPEND — открыть в режиме добавления (прерд каждой записью указатель автоматически устанавливается в конец)

O_PIRECT — не кэшировать

O_LARGEFILE — открыть файл, если он больше 4 Гб.

 
 

 
 

R — для каталогов — означает: получить список находящихся в нем файлов

W — право добавлять (создавать) или удалять файлы в каталоге

X — право находиться в каталоге (это право влияет на все подкаталоги)

Пример:

/а 0700 — права доступа — 111 000 000

/а/в - 111 111 111


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



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