다음을 통해 공유


FILE_DISPOSITION_INFORMATION_EX 구조체(ntddk.h)

FILE_DISPOSITION_INFORMATION_EX 구조체는 ZwSetInformationFile 루틴에 대한 인수로 사용되며 운영 체제에서 파일을 삭제하는 방법을 나타냅니다.

구문

typedef struct _FILE_DISPOSITION_INFORMATION_EX {
  ULONG Flags;
} FILE_DISPOSITION_INFORMATION_EX, *PFILE_DISPOSITION_INFORMATION_EX;

멤버

Flags

삭제하는 동안 시스템이 특정 파일로 수행해야 하는 작업을 지정합니다.

플래그 이름 의미
FILE_DISPOSITION_DO_NOT_DELETE 0x00000000 시스템에서 파일을 삭제하지 않도록 지정합니다.
FILE_DISPOSITION_DELETE 0x00000001 시스템에서 파일을 삭제해야 을 지정합니다.
FILE_DISPOSITION_POSIX_SEMANTICS 0x00000002 시스템에서 POSIX 스타일 삭제를 수행해야 을 지정합니다. 자세한 내용은 비고를 참조하세요.
FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK 0x00000004 시스템에서 이미지 섹션을 강제로 검사 지정합니다.
FILE_DISPOSITION_ON_CLOSE 0x00000008 시스템이 온-닫기 상태를 설정하거나 지울지 여부를 지정합니다.
FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE 0x00000010 읽기 전용 파일을 삭제할 수 있습니다. 자세한 내용은 아래 설명 섹션을 참조하세요.

설명

호출자는 FILE_DISPOSITION_DELETE 사용하여 ZwSetInformationFile을 호출하려면 지정된 파일에 대한 DELETE 액세스 권한이 있어야 합니다.

FILE_DISPOSITION_POSIX_SEMANTICS 설정되지 않은 경우 파일에 대해 열려 있는 모든 핸들이 닫혀 있고 파일의 링크 수가 0이 될 때까지 삭제로 표시된 파일이 실제로 삭제되지 않습니다. FILE_DISPOSITION_POSIX_SEMANTICS 설정하면 POSIX 삭제 핸들이 닫히자마자 표시되는 네임스페이스에서 링크가 제거되지만 마지막 핸들이 닫히기 전까지 파일의 데이터 스트림은 다른 기존 핸들에서 계속 액세스할 수 있습니다. 즉, 파일을 여는 데 사용한 이름이 사라졌고 파일의 링크 수가 0에 도달했더라도 이미 열려 있는 애플리케이션은 핸들을 사용하여 읽기/쓰기를 할 수 있습니다.

사용자 요청 시 파일이 삭제되는 경우 POSIX 의미 체계를 사용하면 시스템에서 요청된 대로 파일을 삭제할 수 있지만 핸들이 열려 있는 모든 프로세스가 핸들이 열려 있는 한 파일의 데이터에 계속 액세스할 수 있습니다.

STATUS_CANNOT_DELETE 반환 값은 파일이 읽기 전용이거나 파일에 매핑된 기존 보기가 있음을 나타냅니다.

요구 사항

요구 사항
헤더 ntddk.h(Ntddk.h, Ntifs.h 포함)

추가 정보

ZwClose

ZwSetInformationFile