_access, _waccess
Определяет, является ли файл только для чтения или нет.Более безопасные версии недоступны; см. _access_s, _waccess_s.
int _access(
const char *path,
int mode
);
int _waccess(
const wchar_t *path,
int mode
);
Параметры
path
Файл или каталог.mode
Атрибут чтения/записи.
Возвращаемое значение
Каждая функция возвращает значение 0, если файл имеет заданный режим.Функция возвращает 1, если файл не существует или не содержит заданный режим. в этом случае errno набор как показано в следующей таблице.
EACCES
Доступ запрещен. настройка разрешений файла не разрешает заданный доступ.ENOENT
Не обнаружены имя файла или путь.EINVAL
Недопустимый параметр.
Дополнительные сведения об этих и других кодах возврата см. _doserrno, errno, _sys_errlist и _sys_nerr.
Заметки
При использовании с файлами _access функция определяет, существует ли указанный файл или каталог и имеет атрибуты, заданные значения mode.При использовании с каталогами, _access указывает, что только существование указанного каталога; IN Windows 2000 и более поздних операционных системах, все каталоги доступ на чтение и для записи.
Значение mode |
Проверяет файл |
---|---|
00 |
Только существование |
02 |
Доступный только на запись |
04 |
Только для чтения |
06 |
Чтение и запись |
Эта функция доступна только проверяет, является ли файл и каталог только для чтения, он не проверяет параметры безопасности файловой системы., Для которого требуется маркер доступа.Дополнительные сведения о безопасности файловой системы, см. в разделе маркеры доступа.Класс библиотеки ATL существует для обеспечения этой функциональности; см. Класс CAccessToken.
_waccess версия расширенных символов _access; path аргумент _waccess строка символов._waccess и _access поступайте идентично в противном случае.
Эта функция проверяет его параметры.If path существует NULL OR mode не задает допустимый режим, недопустимый обработчик вызова, как описано в разделе Проверка параметров.Если выполнение может быть продолжено, то функция устанавливает errno В EINVAL и возвращает -1.
Сопоставления подпрограммы Родов-Текста
Подпрограмма Tchar.h |
Не указанные _UNICODE и _MBCS |
Указанный символ _MBCS |
Указанный _UNICODE |
---|---|---|---|
_taccess |
_access |
_access |
_waccess |
Требования
Процедура |
Обязательный заголовок |
Необязательные заголовки |
---|---|---|
_access |
<io.h> |
<errno.h> |
_waccess |
<wchar.h> OR <io.h> |
<errno.h> |
Пример
В следующем примере используется _access проверить файл с именем crt_ACCESS.C наличие и, разрешено ли записи.
// 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
См. также
Ссылки
_fstat, _fstat32, _fstat64, _fstati64, _fstat32i64, _fstat64i32