Freigeben über


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 .

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)

Weitere Informationen

FltFsControlFile

FILE_ZERO_DATA_INFORMATION

FILE_ZERO_DATA_INFORMATION_EX