Exportar (0) Imprimir
Expandir todo
and
div
eof
not
or
xor
Expandir Minimizar
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

_chmod, _wchmod

Cambia los valores de los permisos de archivo.

int _chmod( 
   const char *filename,
   int pmode 
);
int _wchmod( 
   const wchar_t *filename,
   int pmode 
);

filename

Nombre del archivo existente.

pmode

Configuración de permisos para el archivo.

Estas funciones devuelven 0 si la configuración de permisos se cambia correctamente. Un valor devuelto de –1 indica error. Si el archivo especificado no se encuentra, errno se establece en ENOENT; si un parámetro no es válido, errno se establece en EINVAL.

Los cambios de función de _chmod la configuración de permisos del archivo especificado porfilename. La configuración de permisos controla el acceso de lectura y escritura al archivo. La expresión de entero pmode contiene una o ambas de las constantes de manifiesto siguientes, definidos en SYS\Stat.h.

_S_IWRITE

Escribir permitida.

_S_IREAD

Lectura permitida.

_S_IREAD | _S_IWRITE

Lectura y escritura permitidas.

Cuando se dan ambas constantes, se combinan con el operador bit a bit de OR ( | ). Si el permiso de escritura no se especifica, el archivo es de sólo lectura. Observe que todos los archivos siempre son legibles; no es posible asignar el permiso de solo escritura. Así, los modos _S_IWRITE y _S_IREAD | _S_IWRITE son equivalentes.

_wchmod es una versión con caracteres anchos de _chmod; el argumento filename para _wchmod es una cadena de caracteres anchos. Por lo demás, _wchmod y _chmod se comportan de forma idéntica.

Esta función valida sus parámetros. Si pmode no es una combinación de una de las constantes de manifiesto ni escribir un conjunto alternas de constantes, la función omite simplemente los. Si filename es NULL, se invoca el controlador de parámetros no válidos, como se describe en Validación de parámetros. Si la ejecución puede continuar, errno se establece en EINVAL y la función devuelve -1.

Asignaciones de rutina de texto genérico

Rutina Tchar.h

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_tchmod

_chmod

_chmod

_wchmod

Rutina

Encabezado necesario

Encabezado opcional

_chmod

<io.h>

<sistema/types.h, sistema></stat.h, errno.h><>

_wchmod

<io.h o> wchar.h <>

<sistema/types.h, sistema></stat.h, errno.h><>

Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.

// crt_chmod.c
// This program uses _chmod to
// change the mode of a file to read-only.
// It then attempts to modify the file.
//

#include <sys/types.h>
#include <sys/stat.h>
#include <io.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>

// Change the mode and report error or success 
void set_mode_and_report(char * filename, int mask)
{
   // Check for failure 
   if( _chmod( filename, mask ) == -1 )
   {
      // Determine cause of failure and report. 
      switch (errno)
      {
         case EINVAL:
            fprintf( stderr, "Invalid parameter to chmod.\n");
            break;
         case ENOENT:
            fprintf( stderr, "File %s not found\n", filename );
            break;
         default:
            // Should never be reached 
            fprintf( stderr, "Unexpected error in chmod.\n" );
       }
   }
   else
   {
      if (mask == _S_IREAD)
        printf( "Mode set to read-only\n" );
      else if (mask & _S_IWRITE)
        printf( "Mode set to read/write\n" );
   }
   fflush(stderr);
}

int main( void )
{ 

   // Create or append to a file. 
   system( "echo /* End of file */ >> crt_chmod.c_input" );

   // Set file mode to read-only: 
   set_mode_and_report("crt_chmod.c_input ", _S_IREAD );
   
   system( "echo /* End of file */ >> crt_chmod.c_input " );

   // Change back to read/write: 
   set_mode_and_report("crt_chmod.c_input ", _S_IWRITE );
 
   system( "echo /* End of file */ >> crt_chmod.c_input " ); 
} 
    Una línea de texto. 
  
    Una línea de texto. 
Modo establecido en readonly
Se denegó el acceso.
Modo establecido en la escritura

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft