Udostępnij za pośrednictwem


_access, _waccess

Określa, czy plik jest tylko do odczytu, czy nie.Bezpieczniejsze wersje są dostępne; see _access_s, _waccess_s.

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

Parametry

  • path
    Ścieżka pliku lub katalogu.

  • mode
    Atrybut odczytu i zapisu.

Wartość zwracana

Każda funkcja zwraca 0, jeżeli plik ma danym trybie.Funkcja zwraca –1, jeżeli nazwany plik nie istnieje lub nie ma danego trybu; w tym przypadku errno jest ustawiona, jak pokazano w poniższej tabeli.

  • EACCES
    Odmowa dostępu: ustawienie uprawnień pliku zezwala na dostęp określony.

  • ENOENT
    Nazwa pliku lub nie odnaleziono ścieżki.

  • EINVAL
    Nieprawidłowy parametr.

Aby uzyskać więcej informacji na temat tych i innych kodów powrotu, zobacz _doserrno, errno, _sys_errlist i _sys_nerr.

Uwagi

Gdy używana z plików, _access funkcja określa, czy określony plik lub katalog istnieje i ma atrybuty określone przez wartość mode.Gdy używana z katalogów, _access określa tylko, czy istnieje określony katalog; w Windows 2000 i nowszych w systemach operacyjnych, wszystkie katalogi mają uprawnienia odczytu i zapisu.

modewartość

Plik kontroli

00

Istnienie tylko

02

Tylko do zapisu

04

Tylko do odczytu

06

Odczyt i zapis

Funkcja ta sprawdza tylko, czy plików i katalogów są tylko do odczytu lub nie, nie sprawdza ustawienia zabezpieczeń systemu plików.W tym musisz tokenu dostępu.Aby uzyskać więcej informacji dotyczących zabezpieczeń systemu plików, zobacz Tokeny dostępu.Klasy ATL istnieje tę funkcjonalność; see Klasa CAccessToken.

_waccessjest to wersja szerokich znaków _access; path argument _waccess jest łańcuch szerokich znaków._waccessi _access zachowują się identycznie inaczej.

Funkcja ta sprawdza poprawność jego parametry.Jeśli path jest NULL lub mode nie określa prawidłowego trybu, wywoływana jest funkcja obsługi nieprawidłowy parametr, jak opisano w Sprawdzanie poprawności parametru.Jeśli wykonanie może w dalszym ciągu, funkcja ustawia errno do EINVAL i zwraca wartość -1.

Tekst rodzajowy rutynowych mapowania

Procedura TCHAR.h

_UNICODE i _MBCS nie zdefiniowane

_MBCS, definicja

_UNICODE, definicja

_taccess

_access

_access

_waccess

Wymagania

Rozpoczęto wykonywanie procedury

Wymaganego nagłówka

Opcjonalna nagłówki

_access

<io.h>

<errno.h>

_waccess

<wchar.h> lub <io.h>

<errno.h>

Przykład

W poniższym przykładzie użyto _access zawartość pliku o nazwie crt_ACCESS.C, aby zobaczyć, czy istnieje i czy jest dozwolone zapisywanie.

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

Odpowiednik w programie .NET Framework

System.IO.FileAccess

Zobacz też

Informacje

Obsługa plików

_chmod, _wchmod

_fstat, _fstat32, _fstat64, _fstati64, _fstat32i64, _fstat64i32

_open, _wopen

_stat, _wstat funkcje