Afficher : Object Pascal C++
Préférences d'affichage

chmod, _wchmod

De Appmethod Topics

Remonter à Io.h - Index


Header File

io.h

Category

Input/output Routines

Prototype

int chmod(const char *path, int amode);

int _wchmod(const wchar_t *path, int amode);

Description

Changes file access mode.

chmod sets the file-access permissions of the file given by path according to the mask given by amode. path points to a string.

amode can contain one or both of the symbolic constants S_IWRITE and S_IREAD (defined in sys\stat.h).

S_IWRITE

Permission to write

S_IREAD

Permission to read

S_IREAD | S_IWRITE

Permission to read and write (write permission implies read permission)



Return Value

Upon successfully changing the file access mode, chmod returns 0. Otherwise, chmod returns a value of -1.

In the event of an error, the global variable errno is set to one of the following values:

EACCES

Permission denied

ENOENT

Path or file name not found



Example



 #include <errno.h>
 #include <stdio.h>
 #include <io.h>
 #include <process.h>
 #include <sys\stat.h>
 void main(void)
 {
   char filename[64];
   struct stat stbuf;
   int amode;
   printf("Enter name of file: ");
   scanf("%s", filename);
   if (stat(filename, &stbuf) != 0)
   {
     perror("Unable to get file information");
     exit(1);
   }
   if (stbuf.st_mode & S_IWRITE)
   {
     printf("Changing to read-only\n");
     amode = S_IREAD;
   }
   else
   {
     printf("Changing to read-write\n");
     amode = S_IREAD|S_IWRITE;
   }
   if (chmod(filename, amode) != 0)
   {
     perror("Unable to change file mode");
     exit(1);
   }
   exit(0);
 }



Portability



POSIX Win32 ANSI C ANSI C++

chmod

+

+

_wchmod

NT only

Outils personnels
Autres langues