_access, _waccess

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

Détermine si un fichier est en lecture seule ou non. Des versions plus sécurisées sont disponibles. consultez la page _access_s, _waccess_s.

int _access(   
   const char *path,   
   int mode   
);  
int _waccess(   
   const wchar_t *path,   
   int mode   
);  

Paramètres

path
Chemin d’accès du fichier ou répertoire.

mode
Attribut de lecture/écriture.

Chaque fonction retourne 0 si le fichier a le mode donné. La fonction retourne –&1; si le fichier nommé n’existe pas ou n’a pas le mode donné ; Dans ce cas, errno est défini comme indiqué dans le tableau suivant.

EACCES
Accès refusé : paramètre d’autorisation du fichier n’autorise pas l’accès spécifié.

ENOENT
Nom de fichier ou chemin d’accès introuvable.

EINVAL
Paramètre non valide.

Pour plus d'informations sur ces codes de retour et autres, consultez _doserrno, errno, _sys_errlist et _sys_nerr.

Lorsqu’il est utilisé avec les fichiers, les _access fonction détermine si le fichier ou répertoire spécifié existe et a les attributs spécifiés par la valeur de mode. Lorsqu’il est utilisé avec des répertoires, _access détermine uniquement si le répertoire spécifié existe ; dans Windows 2000 et versions ultérieures, tous les répertoires ont lu et l’accès en écriture.

Valeur modeFichier de contrôle pour
00Existence uniquement
02En écriture seule
04Lecture seule
06Lecture et écriture

Cette fonction vérifie uniquement si le fichier et le répertoire sont en lecture seule ou non, il ne vérifie pas les paramètres de sécurité du système de fichiers. Pour cela, vous devez un jeton d’accès. Pour plus d’informations sur la sécurité du système de fichiers, consultez la page des jetons d’accès. Il existe une classe ATL pour fournir cette fonctionnalité ; consultez la page CAccessToken classe.

_waccess est une version à caractères larges de _access ; l'argument path de _waccess est une chaîne à caractères larges. Sinon, _waccess et _access se comportent de la même façon.

Cette fonction valide ses paramètres. Si path est NULL ou mode ne spécifie pas un mode valid, le Gestionnaire de paramètre non valide est appelé, comme décrit dans Validation de paramètre. Si l’exécution est autorisée à se poursuivre, la fonction définit errno à EINVAL et retourne -1.

Mappages de routines de texte générique

Routine Tchar.h_UNICODE et _MBCS non définis_MBCS défini_UNICODE défini
_taccess_access_access_waccess
RoutineEn-tête requisEn-têtes facultatifs
_access<io.h><errno.h>
_waccess<wchar.h>ou<io.h></io.h></wchar.h><errno.h>

L’exemple suivant utilise _access pour vérifier le fichier nommé crt_ACCESS. C pour voir si elle existe et si l’écriture est autorisée.

// crt_access.c  
// compile with: /W1  
// This example uses _access to check the file named  
// crt_ACCESS.C to see if it exists and if writing is allowed.  
  
#include  <io.h>  
#include  <stdio.h>  
#include  <stdlib.h>  
  
int main( void )  
{  
    // Check for existence.  
    if( (_access( "crt_ACCESS.C", 0 )) != -1 )  
    {  
        printf_s( "File crt_ACCESS.C exists.\n" );  
  
        // Check for write permission.  
        // Assume file is read-only.  
        if( (_access( "crt_ACCESS.C", 2 )) == -1 )  
            printf_s( "File crt_ACCESS.C does not have write permission.\n" );  
    }  
}  

File crt_ACCESS.C exists.  
File crt_ACCESS.C does not have write permission.  

System.IO.FileAccess

Gestion de fichiers
_chmod, _wchmod
_fstat, _fstat32, _fstat64, _fstati64, _fstat32i64, _fstat64i32
_open, _wopen
_stat, _wstat, fonctions

Afficher: