_umask_s
기본 파일 권한 마스크를 설정합니다.버전 _umask 와 보안 기능 향상에 설명 된 대로 CRT의 보안 기능.
errno_t _umask_s(
int mode,
int * pOldMode
);
매개 변수
[in] mode
기본 사용 권한 설정 합니다.[out] oldMode
사용 권한 설정의 이전 값입니다.
반환 값
경우 오류 코드를 반환 합니다. Mode 올바른 모드를 지정 하지 않은 나는 pOldMode 포인터입니다 NULL.
오류 조건
mode |
pOldMode |
반환 값 |
내용oldMode |
---|---|---|---|
모든 |
NULL |
EINVAL |
수정 되지 않음 |
잘못 된 모드 |
모든 |
EINVAL |
수정 되지 않음 |
위의 조건 중 하나가 발생 하는 경우 잘못 된 매개 변수 처리기를의 설명에 따라 호출 됩니다 매개 변수 유효성 검사.실행을 계속 수 있으면 _umask_s 반환 EINVAL 를 설정 하 고 errno 에 EINVAL.
설명
_umask_s 함수에 의해 지정 된 모드에 현재 프로세스의 파일 권한 마스크 설정 mode*.* 권한 설정에서 만든 새 파일의 파일 권한 마스크 수정 _creat, _open, 또는 _sopen.마스크에서에서 비트 1 경우 파일 권한 요청 된 값의 해당 비트가 0 (허용)으로 설정 됩니다.해당 비트 마스크에서 비트가 0 인 경우, 왼쪽입니다 변경 되지 않습니다.처음으로 파일을 닫을 때까지 새 파일에 대 한 사용 권한 설정이 설정 되지 않았습니다.
정수 식 pmode SYS\STAT에 정의 된 다음 매니페스트 상수 중 하나 또는 모두를 포함 합니다.H:
_S_IWRITE
쓰기를 허용 합니다._S_IREAD
읽기를 허용 합니다._S_IREAD | _S_IWRITE
읽기 및 쓰기를 허용 합니다.
두 상수가 지정 된 경우는 가입 된 비트 OR 연산자 (와 | ).경우는 mode 인수는 _S_IREAD, 읽기 허용 되지 않습니다 (쓰기 전용 파일입니다).경우는 mode 인수는 _S_IWRITE, 쓰기 허용 되지 않습니다 (읽기 전용 파일입니다).예를 들어, 쓰기 비트 마스크에서 설정 되 면 모든 새 파일 읽기 전용으로 설정 됩니다.참고 MS-DOS 및 Windows 운영 체제와 모든 파일을 읽을 수 있는지. 쓰기 전용 권한을 부여할 수 없습니다.따라서 비트를 읽기 설정 _umask_s 파일의 모드에는 영향을 주지 않습니다.
경우 pmode 조합 된 매니페스트 상수 중 하나를 없거나 통합은 서로 다른 집합 상수, 함수 단순히이 무시 합니다.
요구 사항
루틴 |
필수 헤더 |
---|---|
_umask_s |
<io.h> 및 <sys/stat.h> 및 <sys/types.h> |
추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.
예제
// crt_umask_s.c
/* This program uses _umask_s 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, err;
/* Create read-only files: */
err = _umask_s( _S_IWRITE, &oldmask );
if (err)
{
printf("Error setting the umask.\n");
exit(1);
}
printf( "Oldmask = 0x%.4x\n", oldmask );
}
해당 .NET Framework 항목
System::IO::File::SetAttributes