Sdílet prostřednictvím


_umask

Nastaví výchozí oprávnění souboru masku.Bezpečnější verze této funkce je k dispozici; see _umask_s.

int _umask(
   int pmode 
);

Parametry

  • pmode
    Výchozí nastavení oprávnění.

Vrácená hodnota

_umaskVrátí předchozí hodnotu pmode.Neexistuje žádná chyba návratu.

Poznámky

_umask Funkce nastaví režim určený Maska oprávnění souboru aktuální proces pmode*.* Maska oprávnění soubor upravuje nastavení oprávnění v nové soubory vytvořené v _creat, _open, nebo _sopen.Pokud je v masce bit 1, příslušné bity hodnotu požadované oprávnění souboru nastavena na 0 (zakázáno).Pokud je v masce bit 0, odpovídající bit je ponechán beze změny.Nastavení oprávnění pro nový soubor není nastavena, dokud nezavřete první soubor.

Výraz celé pmode obsahuje jeden nebo oba následující manifestu konstanty definované v SYS\STAT.H:

  • _S_IWRITE
    Zápis povolen.

  • _S_IREAD
    Čtení povoleny.

  • _S_IREAD | _S_IWRITE
    Čtení a zápis povolen.

Při obou konstanty jsou uvedeny, jsou spojeny pomocí operátoru bitový operátor OR ( | ).Pokud pmode argument je _S_IREAD, není povoleno čtení (soubor je jen pro zápis).Pokud pmode argument je _S_IWRITE, není povolen zápis (soubor je jen pro čtení).Například pokud je nastaven bit zápis v masce, nové soubory budou být jen pro čtení.Systém MS-DOS a operační systémy Windows, všechny soubory jsou čitelné; není možné udělit oprávnění pouze pro zápis.Proto nastavení čtení bit s _umask nemá žádný vliv na režimy v souboru.

Pokud pmode je kombinací jedné z manifestu konstant nebo zahrnuje alternativní sadu konstant, funkcí bude jednoduše ignorovat ty.

Požadavky

Rutina

Požadované záhlaví

_umask

<io.h>, <sys/stat.h>, <sys/types.h>

Další informace o kompatibilitě, viz Compatibility v úvodu.

Knihovny

Všechny verze C Runtime knihovny.

Příklad

// crt_umask.c
// compile with: /W3
// This program uses _umask to set
// the file-permission mask so that all future
// files will be created as read-only files.
// It also displays the old mask.
#include <sys/stat.h>
#include <sys/types.h>
#include <io.h>
#include <stdio.h>

int main( void )
{
   int oldmask;

   /* Create read-only files: */
   oldmask = _umask( _S_IWRITE ); // C4996
   // Note: _umask is deprecated; consider using _umask_s instead
   printf( "Oldmask = 0x%.4x\n", oldmask );
}
  

Ekvivalent v rozhraní .NET Framework

System::IO::file::SetAttributes

Viz také

Referenční dokumentace

Zpracování souborů

I/O nízké úrovně

_chmod, _wchmod

_creat, _wcreat

_mkdir, _wmkdir

_open, _wopen