Описание функций Си

_Chmod



     _chmod

Функция Изменяет режим доступа к файлу.

Синтаксис #include

#include

int _chmod(const char * path, int func[,int attrib]);

Файл, содержащий io.h прототип

Описание Функция _chmod может изменять или устанавливать атрибуты файлов DOS. Если func равен 0, то функ- ция возвращает текущие атрибуты DOS для данного файла. Если func равен 1, то атрибуты устанавли- ваются в сооответствии с аргументом attrib.

attrib может быть одной из следующих символьных константных значений (определенных в dos.h):

FA_RDONLY только чтение FA_HIDDEN скрытый файл FA_SYSTEM системный файл FA_LABEL метка тома FA_DIREC директория FA_ARCH архив

Возвращаемое При успешном завершении _chmod возвращает слово с значение атрибутами файла; иначе, возвращается значение -1.

В случае ошибки errno присваивается одно из сле- дующих значений:

ENOENT - Маршрут или имя файла не найдены EACCES - Отказ доступа

Переносимость _chmod уникальна для DOS.

Смотрите также

Пример:

#include

#include

#include

#include

int get_file_attrib(char *filename);

int main(void); { char filename[128]; int attrib; printf("Введите имя файла:"); scanf("%s",filename); attrib = get_file_attrib(filename); if(attrib == -1) switch(errno) { case ENOENT:printf("Маршрут или имя файла не найдены\n"); break; case EACCES:printf("Отказ доступа\n"); break; default: printf("Ошибка номер %d\n",errno); break; } else { if(attrib & FA_RDONLY) printf("%s имеет атрибут только на чтение\n",filename); if(attrib & FA_HIDDEN) printf("%s - cкрытый файл\n",filename); if(attrib & FA_SYSTEM) printf("%s - системный файл \n",filename); if(attrib & FA_LABEL) printf("%s - метка тома\n",filename); if(attrib & FA_DIREC) printf("%s - директория\n",filename); if(attrib & FA_ARCH) printf("%s - архивный файл\n",filename); } return 0; } /* возвращает атрибуты файла */ int get_file_attrib(char *filename) { return(_chmod(filename,0)); }



Содержание раздела