FSCTL_SET_ZERO_DATA-Steuerungscode
Der FSCTL_SET_ZERO_DATA-Steuerelementcode füllt einen angegebenen Bereich einer Datei mit Nullen (0) aus. Wenn die Datei nur spär oder komprimiert ist, kann das NTFS-Dateisystem die Zuordnung des Speicherplatzes in der Datei aufheben. Dadurch wird der Bytebereich auf Nullen (0) festgelegt, ohne die Dateigröße zu erweitern.
Um diesen Vorgang von einem Treiber auszuführen, rufen Sie FltFsControlFile mit den folgenden Parametern auf.
Parameter
Instanz: Undurchsichtiger instance Zeiger für den Aufrufer. Dieser Parameter ist erforderlich und darf nicht NULL sein.
FileObject [in]: Dateiobjektzeiger auf die Datei, in die Nullen geschrieben werden sollen. Dieser Parameter ist erforderlich und darf nicht NULL sein.
FsControlCode [in]: Der Steuerelementcode für den Vorgang.
Verwenden Sie für diesen Vorgang FSCTL_SET_ZERO_DATA .
- InputBuffer [in]: Ein Zeiger auf eine FILE_ZERO_DATA_INFORMATION - oder FILE_ZERO_DATA_INFORMATION_EX-Struktur , die den Bereich der Datei angibt, die auf Nullen festgelegt werden soll.
Das FileOffset-Element ist der Byteoffset des ersten Byte, das auf Nullen (0) festgelegt werden soll, und das BeyondFinalZero-Element ist der Byteoffset des ersten Byte über das letzte 0 (0)-Byte hinaus.
Das Flags-Element in FILE_ZERO_DATA_INFORMATION_EX gibt Modifizierer für den Vorgang an. Wenn z. B . Flags auf FILE_ZERO_DATA_INFORMATION_FLAG_PRESERVE_CACHED_DATA festgelegt ist, wird der Inhalt des Caches, der diesem Dateibereich entspricht, nicht gelöscht.
InputBufferLength [in]: Die Größe des Eingabepuffers in Bytes.
OutputBuffer [out]: Bei diesem Vorgang nicht verwendet; auf NULL festgelegt.
OutputBufferLength [out]: Bei diesem Vorgang nicht verwendet; auf 0 (null) festgelegt.
Statusblock
FltFsControlFile gibt STATUS_SUCCESS oder einen entsprechenden NTSTATUS-Wert zurück.
Rückgabecode | Bedeutung |
---|---|
STATUS-_INSUFFICIENT_RESOURCES | Es steht nicht genügend Arbeitsspeicher zur Verfügung, um den Vorgang durchzuführen. |
STATUS_INVALID_PARAMETER | InputBufferLength ist kleiner als die Größe der FILE_ZERO_DATA_INFORMATION-Strukturen, oder die angegebene Datei ist eine Systemmetadatendatei oder ein Verzeichnis. |
STATUS_ACCESS_DENIED | Die FILE_ZERO_DATA_INFORMATION_FLAG_PRESERVE_CACHED_DATA wird im Benutzermodus festgelegt. |
STATUS_MEDIA_WRITE_PROTECTED | Das Volume ist derzeit schreibgeschützter. |
Anforderungen
Anforderungstyp | Anforderung |
---|---|
Header | Ntifs.h (include Ntifs.h) |