다음을 통해 공유


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