_access, _waccess
Určuje, zda je soubor jen pro čtení, nebo ne.Bezpečnější verze jsou k dispozici; see _access_s, _waccess_s.
int _access(
const char *path,
int mode
);
int _waccess(
const wchar_t *path,
int mode
);
Parametry
path
Cesta k souboru nebo adresáři.mode
Atribut pro čtení a zápis.
Vrácená hodnota
Každá funkce vrátí hodnotu 0, pokud má soubor daného režimu.Funkce vrací –1 Pokud pojmenovaný soubor neexistuje nebo nemá daného režimu; v tomto případě errno je nastaven, jak je znázorněno v následující tabulce.
EACCES
Přístup byl odepřen: nastavení oprávnění na soubor zadaný přístup neumožňuje.ENOENT
Název souboru nebo cesta nebyla nalezena.EINVAL
Neplatný parametr.
Další informace o těchto a dalších návratových kódech naleznete v části _doserrno, errno, _sys_errlist, and _sys_nerr.
Poznámky
Při použití se soubory, _access funkce určuje, zda zadaný soubor nebo adresář existuje a má atributy určené hodnotou mode.Při použití adresáře, _access pouze určuje, zda existuje zadaný adresář. v Windows 2000 a novější operační systémy, všechny adresáře mají přístup Číst a zapisovat.
Hodnota mode |
Soubor kontroly |
---|---|
00 |
Pouze existenci |
02 |
Jen pro zápis |
04 |
Jen pro čtení |
06 |
Pro čtení a zápis |
Tato funkce pouze zkontroluje, zda soubory a adresáře jsou jen pro čtení nebo Ne, kontrolu nastavení zabezpečení systému souborů.Pro tuto budete potřebovat přístupový token.Další informace o zabezpečení systému souborů, viz Přístupové tokeny.Třídy knihovny ATL existuje poskytnout tuto funkci; see Třída CAccessToken.
_waccess je širokoznaká verze _access; argument path pro _waccess je širokoznaký řetězec._waccess a _access se jinak chovají stejně.
Tato funkce ověřuje své parametry.Pokud path je NULL nebo mode neurčuje platný režim vyvolání neplatný parametr obslužné rutiny, jak je popsáno v Ověření parametru.Pokud je povoleno pokračovat v provádění, nastaví funkce errno k EINVAL a vrátí -1.
Rutinní mapování obecného textu
Rutina Tchar.h |
_UNICODE a _MBCS nejsou definovány |
_MBCS definováno |
_UNICODE definováno |
---|---|---|---|
_taccess |
_access |
_access |
_waccess |
Požadavky
Rutina |
Požadované záhlaví |
Volitelná záhlaví |
---|---|---|
_access |
<io.h> |
<errno.h> |
_waccess |
<wchar.h> nebo <io.h> |
<errno.h> |
Příklad
Následující příklad používá _access ke kontrole souboru s názvem crt_ACCESS.C Chcete-li zjistit, zda existuje a zda je povolen zápis.
// 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" );
}
}
Ekvivalent v rozhraní .NET Framework
Viz také
Referenční dokumentace
_fstat, _fstat32, _fstat64, _fstati64, _fstat32i64, _fstat64i32