_access, _waccess

Bestimmt, ob eine Datei schreibgeschützt ist.Sicherere Versionen verfügbar sind. Weitere Informationen finden Sie unter _access_s, _waccess_s.

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

Parameter

  • path
    Datei oder Verzeichnispfad.

  • mode
    Attribut für Lese-/Schreibzugriff auf.

Rückgabewert

Jede Funktion gibt 0 zurück, wenn die Datei im angegebenen Modus hat.Die Funktion gibt 1, wenn die genannte Datei nicht vorhanden oder verfügt nicht wieder den angegebenen Modus. In diesem Fall wird errno wie in der folgenden Tabelle dargestellt festgelegt.

  • EACCES
    Zugriff verweigert. Berechtigungen der Einstellung der Datei nicht zugelassene angegebenen Zugriff.

  • ENOENT
    Dateiname oder Pfad nicht gefunden.

  • EINVAL
    Ungültiger Parameter.

Weitere Informationen über diese und andere Rückgabecodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.

Hinweise

Wenn sie mit Dateien verwendet wird, bestimmt die _access-Funktion, ob die angegebene Datei bzw. das angegebene Verzeichnis vorhanden ist und die Attribute verfügt, die durch den Wert von modeangegeben werden.Wenn es mit Verzeichnissen verwendet wird, bestimmt _access nur, ob das angegebene Verzeichnis vorhanden ist. Windows 2000 in neueren Betriebssystemen sowie alle Verzeichnisse Lese- und Schreibzugriff.

mode-Wert

Überprüft Datei für

00

Nur Vorhandensein

02

Lesegeschützt

04

Schreibgeschützt

06

Lesen und Schreiben

Diese Funktion überprüft nur, ob die Datei oder das Verzeichnis und nicht schreibgeschützt sind, überprüft nicht die Sicherheitseinstellungen für die Dateisystem.Für das benötigen Sie ein Zugriffstoken.Weitere Informationen zur Sicherheit finden Sie unter ZugriffstokenDateisystem.Eine ATL-Klasse vorhanden, um diese Funktionalität bereitzustellen. Weitere Informationen finden Sie unter CAccessToken-Klasse.

_waccess ist eine Breitzeichen-Version von _access. path das Argument zu _waccess ist eine Zeichenfolge mit Breitzeichen._waccess und _access verhalten sich ansonsten unterscheiden.

Diese Funktion überprüft seine Parameter.Wenn pathNULL ist, oder mode keinen gültigen Modus angibt, wird der Ereignishandler aufgerufen, z. B. ungültige Parameter in Parametervalidierungbeschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, legt die Funktion errno zu EINVAL fest und gibt -1 zurück.

Zuweisung generischer Textroutinen

Tchar.h-Routine

_UNICODE als auch _MBCS nicht definiert

_MBCS definieren

_UNICODE definiert

_taccess

_access

_access

_waccess

Anforderungen

Routine

Erforderlicher Header

Optionale Header

_access

<io.h>

<errno.h>

_waccess

<wchar.h> oder <io.h>

<errno.h>

Beispiel

Im folgenden Beispiel wird _access , um die Datei zu überprüfen, die crt_ACCESS.C Namen, um festzustellen, ob sie vorhanden ist und ob Schreibzugriff zulässig ist.

// 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" );
    }
}
  
  

.NET Framework-Entsprechung

System.IO.FileAccess

Siehe auch

Referenz

Datei-Behandlung

_chmod, _wchmod

_fstat, _fstat32, _fstat64, _fstati64, _fstat32i64, _fstat64i32

_open, _wopen

_stat, _wstat Funktionen