FILE_DISPOSITION_INFORMATION_EX-Struktur (ntddk.h)
Die FILE_DISPOSITION_INFORMATION_EX-Struktur wird als Argument für die ZwSetInformationFile-Routine verwendet und gibt an, wie das Betriebssystem eine Datei löschen soll.
Syntax
typedef struct _FILE_DISPOSITION_INFORMATION_EX {
ULONG Flags;
} FILE_DISPOSITION_INFORMATION_EX, *PFILE_DISPOSITION_INFORMATION_EX;
Member
Flags
Gibt an, welche Aktionen das System beim Löschen mit einer bestimmten Datei ausführen soll.
Flagname | Wert | Bedeutung |
---|---|---|
FILE_DISPOSITION_DO_NOT_DELETE | 0x00000000 | Gibt an, dass das System eine Datei nicht löschen soll. |
FILE_DISPOSITION_DELETE | 0x00000001 | Gibt an, dass das System eine Datei löschen soll. |
FILE_DISPOSITION_POSIX_SEMANTICS | 0x00000002 | Gibt an, dass das System einen Löschvorgang im POSIX-Format ausführen soll. Weitere Informationen finden Sie unter Hinweise. |
FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK | 0x00000004 | Gibt an, dass das System eine Bildabschnittsprüfung erzwingen soll. |
FILE_DISPOSITION_ON_CLOSE | 0x00000008 | Gibt an, ob das System den Zustand beim Schließen festlegt oder löscht. |
FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE | 0x00000010 | Ermöglicht das Löschen schreibgeschützter Dateien. Weitere Informationen finden Sie weiter unten im Abschnitt "Hinweise". |
Hinweise
Der Aufrufer muss über DELETE-Zugriff auf eine angegebene Datei verfügen, um ZwSetInformationFile mit FILE_DISPOSITION_DELETE aufrufen zu können.
Wenn FILE_DISPOSITION_POSIX_SEMANTICS nicht festgelegt ist, wird eine datei, die zum Löschen markiert ist, erst dann tatsächlich gelöscht, wenn alle geöffneten Handles für die Datei geschlossen wurden und die Linkanzahl für die Datei null ist. Wenn FILE_DISPOSITION_POSIX_SEMANTICS festgelegt ist, wird der Link aus dem sichtbaren Namespace entfernt, sobald das POSIX-Löschhandle geschlossen wurde, aber die Datenströme der Datei bleiben von anderen vorhandenen Handles zugänglich, bis das letzte Handle geschlossen wurde. Das heißt, Anwendungen, für die die Datei bereits geöffnet war, können ihr Handle weiterhin zum Lesen/Schreiben verwenden, obwohl der Name, den sie zum Öffnen verwendet haben, weg ist und die Linkanzahl der Datei möglicherweise 0 (null) erreicht hat.
Wenn die Datei auf Benutzeranforderung gelöscht wird, ermöglicht die Verwendung der POSIX-Semantik dem System, die Datei wie angefordert zu löschen, aber auch allen Prozessen mit einem geöffneten Handle, weiterhin auf die Daten der Datei zuzugreifen, solange das Handle geöffnet ist.
Der Rückgabewert STATUS_CANNOT_DELETE gibt an, dass die Datei entweder schreibgeschützt ist oder dass der Datei eine vorhandene zugeordnete Ansicht vorhanden ist.
Anforderungen
Anforderung | Wert |
---|---|
Header | ntddk.h (include Ntddk.h, Ntifs.h) |