_access_s, _waccess_s

Указывает считываемый файл или разрешения на запись.это версия _access, _waccess со службами расширений безопасности, как описано в разделе Средства безопасности в CRT.

errno_t _access_s( 
   const char *path, 
   int mode 
);
errno_t _waccess_s( 
   const wchar_t *path, 
   int mode 
);

Параметры

  • path
    Файл или каталог.

  • mode
    Настройка разрешений.

Возвращаемое значение

Каждая функция возвращает значение 0, если файл имеет заданный режим.Функция возвращает код ошибки, если файл не существует или недоступна в заданном режиме.В этом случае функция возвращает код ошибки из набора следующим образом, а также наборы errno к тому же значению.

  • EACCES
    Доступ запрещен.Настройка разрешений файла не разрешает заданный доступ.

  • ENOENT
    Не обнаружены имя файла или путь.

  • EINVAL
    Недопустимый параметр.

Дополнительные сведения см. в разделе errno, _doserrno, _sys_errlist и _sys_nerr.

Заметки

При использовании с файлами _access_s функция определяет, существует ли указанный файл и можно получить доступ как определено значение mode.при использовании с каталогами, _access_s указывает, что только существование указанного каталога.IN Windows 2000 и более поздних операционных системах, все каталоги доступ на чтение и для записи.

значение режима

Проверяет файл

00

Существование только для чтения.

02

разрешение на запись.

04

разрешение на чтение.

06

Чтение и запись разрешения.

Разрешения на чтение или запись файла, недостаточно, чтобы обеспечить возможность открыть файл.Например, если файл блокированн другим процессом, то он может не быть доступен даже если _access_s возвращает 0.

_waccess_s версия расширенных символов _access_s, где path аргумент _waccess_s строка символов.в противном случае, _waccess_s и _access_s поступайте одинаково.

Эти функции проверяют их параметры.If path существует NULL OR mode не задает допустимый режим, недопустимый обработчик вызова, как описано в разделе Проверка параметров.Если выполнение может быть продолжено, то эти функции установки errno В EINVAL и извлечение EINVAL.

Сопоставления подпрограммы Родов-Текста

Подпрограмма Tchar.h

Не указанные _UNICODE и _MBCS

Указанный символ _MBCS

Указанный _UNICODE

_taccess_s

_access_s

_access_s

_waccess_s

Требования

Процедура

Обязательный заголовок

Необязательный заголовок

_access_s

<io.h>

<errno.h>

_waccess_s

<wchar.h> OR <io.h>

<errno.h>

Пример

этот пример использует _access_s проверить файл с именем crt_access_s.c наличие и, разрешено ли записи.

// crt_access_s.c

#include <io.h>
#include <stdio.h>
#include <stdlib.h>

int main( void )
{
    errno_t err = 0;

    // Check for existence. 
    if ((err = _access_s( "crt_access_s.c", 0 )) == 0 )
    {
        printf_s( "File crt_access_s.c exists.\n" );

        // Check for write permission. 
        if ((err = _access_s( "crt_access_s.c", 2 )) == 0 )
        {
            printf_s( "File crt_access_s.c does have "
                      "write permission.\n" );
        }
        else
        {
            printf_s( "File crt_access_s.c does not have "
                      "write permission.\n" );
        }
    }
    else
    {
        printf_s( "File crt_access_s.c does not exist.\n" );
    }
}
  
  

Эквивалент в .NET Framework

System.IO.FileAccess

См. также

Ссылки

Обработка файла

_access, _waccess

_chmod, _wchmod

_fstat, _fstat32, _fstat64, _fstati64, _fstat32i64, _fstat64i32

_open, _wopen

_stat, функции _wstat