FSCTL_GET_REPARSE_POINT Steuerungscode
Der FSCTL_GET_REPARSE_POINT-Steuerelementcode ruft die Analysepunktdaten ab, die der angegebenen Datei oder dem angegebenen Verzeichnis zugeordnet sind.
Um diesen Vorgang auszuführen, rufen Sie FltFsControlFile oder ZwFsControlFile mit den folgenden Parametern auf.
Weitere Informationen zu Analysepunkten und dem FSCTL_GET_REPARSE_POINT-Steuerelementcode finden Sie in der Microsoft Windows SDK-Dokumentation.
Parameter
FileObject [in]: Nur FltFsControlFile . Dateiobjektzeiger für die Datei oder das Verzeichnis, aus dem die Analysepunktdaten abgerufen werden sollen. Dieser Parameter ist erforderlich und darf nicht NULL sein.
FileHandle [in]: nur ZwFsControlFile . Dateihandle für die Datei oder das Verzeichnis, aus dem die Analysepunktdaten abgerufen werden sollen. Dieser Parameter ist erforderlich und darf nicht NULL sein.
FsControlCode [in]: Ein Steuerelementcode für den Vorgang. Verwenden Sie für diesen Vorgang FSCTL_GET_REPARSE_POINT .
InputBuffer [in]: Nicht für diesen Vorgang verwendet; auf NULL festgelegt.
InputBufferLength [in]: Bei diesem Vorgang nicht verwendet; auf 0 festgelegt.
OutputBuffer [out]: Zeiger auf eine vom Aufrufer zugewiesene REPARSE_GUID_DATA_BUFFER oder REPARSE_DATA_BUFFER Struktur, die die Analysepunktdaten empfängt.
OutputBufferLength [out]: Größe des Puffers in Bytes, auf den der OutputBuffer-Parameter verweist. Die Anzahl der Bytes wird wie folgt berechnet:
Struktur OutputBufferLength REPARSE_GUID_DATA_BUFFER Muss mindestens REPARSE_GUID_DATA_BUFFER_HEADER_SIZE plus die Größe der erwarteten benutzerdefinierten Daten sein; und muss kleiner oder gleich MAXIMUM_REPARSE_DATA_BUFFER_SIZE sein. REPARSE_DATA_BUFFER Muss mindestens REPARSE_DATA_BUFFER_HEADER_SIZE plus die Größe der erwarteten benutzerdefinierten Daten sein. und muss kleiner oder gleich MAXIMUM_REPARSE_DATA_BUFFER_SIZE sein.
Statusblock
FltFsControlFile oder ZwFsControlFile gibt STATUS_SUCCESS oder einen entsprechenden NTSTATUS-Wert zurück, z. B. einen der folgenden:
Code | Bedeutung |
---|---|
STATUS_BUFFER_OVERFLOW | Der Puffer, auf den der OutputBuffer-Parameter verweist, ist groß genug, um den festen Teil der REPARSE_GUID_DATA_BUFFER- oder REPARSE_DATA_BUFFER-Struktur, aber nicht die benutzerdefinierten Daten zu enthalten. In diesem Fall werden nur OutputBufferLength-Bytes im OutputBuffer-Puffer zurückgegeben. Der LengthReturned-Parameter für FltFsControlFile empfängt die tatsächliche Länge der zurückgegebenen Daten in Bytes. Dies ist ein Warncode. |
STATUS_BUFFER_TOO_SMALL | Der Puffer, auf den OutputBuffer verweist, ist kleiner als sizeof(REPARSE_GUID_DATA_BUFFER) und nicht groß genug, um die Analysepunktdaten aufzunehmen. Der LengthReturned-Parameter für FltFsControlFile (oder das Information-Element des IoStatus-Parameters zu ZwFsControlFile) empfängt die erforderliche Puffergröße. In diesem Fall werden keine Analysepunktdaten zurückgegeben. Dies ist ein Fehlercode. |
STATUS_IO_REPARSE_DATA_INVALID | Einer der angegebenen Parameterwerte war ungültig. Dies ist ein Fehlercode. |
STATUS_NOT_A_REPARSE_POINT | Die Datei oder das Verzeichnis ist kein Analysepunkt. Dies ist ein Fehlercode. |
Anforderungen
Anforderungstyp | Anforderung |
---|---|
Header | Ntifs.h (einschließlich Ntifs.h oder Fltkernel.h) |