FltFsControlFile-Funktion (fltkernel.h)
Die FltFsControlFile Routine sendet einen Steuercode direkt an einen angegebenen Dateisystem- oder Dateisystemfiltertreiber, wodurch der entsprechende Treiber die angegebene Aktion ausführt.
Syntax
NTSTATUS FLTAPI FltFsControlFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[in] ULONG FsControlCode,
[in, optional] PVOID InputBuffer,
[in] ULONG InputBufferLength,
[out, optional] PVOID OutputBuffer,
[in] ULONG OutputBufferLength,
[out, optional] PULONG LengthReturned
);
Parameter
[in] Instance
Undurchsichtiger Instanzzeiger für den Aufrufer. Dieser Parameter ist erforderlich und kann nicht NULL-werden.
[in] FileObject
Dateiobjektzeiger für die Datei oder das Verzeichnis, die das Ziel dieser Anforderung ist. Dieser Parameter ist erforderlich und kann nicht NULL-werden.
[in] FsControlCode
FSCTL_XXX Code, der angibt, welcher Dateisystemvorgang ausgeführt werden soll. Der Wert dieses Parameters bestimmt die Formate und erforderlichen Längen der InputBuffer- und OutputBuffer-und bestimmt, welche der folgenden Parameterpaare (InputBuffer und InputBufferLength, OutputBuffer und OutputBufferLength) erforderlich ist.
[in, optional] InputBuffer
Zeigen Sie auf einen vom Aufrufer zugewiesenen Eingabepuffer, der gerätespezifische Informationen enthält, die dem Zieltreiber zugewiesen werden sollen. Wenn der FsControlCode Parameter einen Vorgang angibt, der keine Eingabedaten erfordert, ist dieser Parameter optional und kann NULL-sein.
[in] InputBufferLength
Größe des Puffers in Bytes bei InputBuffer-. Dieser Wert wird ignoriert, wenn InputBuffer-NULL-ist.
[out, optional] OutputBuffer
Zeigen Sie auf einen vom Aufrufer zugewiesenen Ausgabepuffer, in dem Informationen vom Zieltreiber zurückgegeben werden. Wenn der FsControlCode Parameter einen Vorgang angibt, der keine Ausgabedaten erfordert, ist dieser Parameter optional und kann NULL-sein.
[in] OutputBufferLength
Größe des Puffers in Bytes bei OutputBuffer-. Dieser Wert wird ignoriert, wenn OutputBuffer-NULL-ist.
[out, optional] LengthReturned
Zeiger auf eine vom Aufrufer zugewiesene Variable, die die Größe der im Puffer zurückgegebenen Informationen in Byte an OutputBuffer-empfängt. Dieser Parameter ist optional und kann NULL-werden.
Rückgabewert
FltFsControlFile- gibt STATUS_SUCCESS oder einen entsprechenden NTSTATUS-Wert zurück.
Bemerkungen
Minifiltertreiber sollten diese Routine anstelle von ZwFsControlFile-aufrufen.
Die folgenden FSCTL-Codes sind derzeit für Kernelmodustreiber dokumentiert:
FSCTL_OPBATCH_ACK_CLOSE_PENDING
FSCTL_OPLOCK_BREAK_ACKNOWLEDGE
Weitere Informationen zu den systemdefinierten FSCTL_XXX--Codes finden Sie im Abschnitt "Hinweise" des Referenzeintrags für DeviceIoControl in der Microsoft Windows SDK-Dokumentation.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | fltkernel.h (include Fltkernel.h) |
Library | FltMgr.lib |
DLL- | Fltmgr.sys |
IRQL- | PASSIVE_LEVEL |