Freigeben über


MRxDevFcbXXXControlFile-Routine

Die MRxDevFcbXXXControlFile-Routine wird von RDBSS aufgerufen, um eine FCB-Steuerungsanforderung des Geräts (eine IOCTL- oder FSCTL-Anforderung) an den Netzwerkminiumleitungsor zu übergeben.

Syntax

PMRX_CALLDOWN MRxDevFcbXXXControlFile;

NTSTATUS MRxDevFcbXXXControlFile(
  _Inout_ PRX_CONTEXT RxContext
)
{ ... }

Parameter

RxContext [ein, aus]
Ein Zeiger auf die RX_CONTEXT-Struktur. Dieser Parameter enthält die IRP, die den Vorgang anfordert.

Rückgabewert

MRxDevFcbXXXControlFile gibt STATUS_SUCCESS bei Erfolg oder einen entsprechenden NTSTATUS-Wert zurück, z. B. einen der folgenden:

Rückgabecode Beschreibung
STATUS_ACCESS_DENIED

Es wurde eine Anforderung gestellt, den Netzwerk-Miniumleitungsor zu beenden oder zu starten, aber dem Aufrufer fehlte die richtige Sicherheit für diesen Vorgang.

STATUS_INVALID_DEVICE_REQUEST

Eine ungültige Geräteanforderung wurde an den Netzwerk-Mini-Redirector gesendet.

STATUS_REDIRECTOR_HAS_OPEN_HANDLES

Dies war eine Anforderung zum Beenden des Netzwerkminiumleitungs, aber der Redirector verfügt über geöffnete Handles, die verhindern, dass er zu diesem Zeitpunkt angehalten wird.

STATUS_REDIRECTOR_NOT_STARTED

Dies war eine Anforderung, den Netzwerkminiumleitungsor zu beenden, aber der Umleitungsor wurde nicht gestartet.

STATUS_REDIRECTOR_STARTED

Dies war eine Anforderung zum Starten des Netzwerkminiumleitungs, aber der Umleitungsor wurde bereits gestartet.

Hinweise

MRxDevFcbXXXControlFile verarbeitet IOCTL- und FSCTL-Anforderungen im Zusammenhang mit dem FCB des Geräts, die an den Netzwerk-Mini-Redirector gesendet werden.

Vor dem Aufrufen von MRxDevFcbXXXControlFile ändert RDBSS den folgenden Member in der RX_CONTEXT Struktur, auf die der RxContext-Parameter verweist:

MajorFunction ist auf die Hauptfunktion des IRP festgelegt.

Wenn es sich um eine IRP_MJ_FILE_SYSTEM_CONTROL Anforderung handelt, ändert RDBSS die folgenden Member in der RX_CONTEXT-Struktur, auf die der RxContext-Parameter verweist:

LowIoContext.ParamsFor.FsCtl.MinorFunction ist auf den Nebenfunktionscode für den FSCTL-Code festgelegt.

LowIoContext.ParamsFor.FsCtl.FsControlCode ist auf den FSCTL-Code für die IRP festgelegt.

Wenn es sich um eine IRP_MJ_DEVICE_CONTROL- oder IRP_MJ_INTERNAL_DEVICE_CONTROL-Anforderung handelt, ändert RDBSS den folgenden Member in der RX_CONTEXT Struktur, auf die der RxContext-Parameter verweist:

LowIoContext.ParamsFor.FsCtl.FsControlCode ist auf den Steuerungscode für die IRP festgelegt.

Wenn MRxDevFcbXXXControlFile STATUS_SUCCESS zurückgibt, war die Routine erfolgreich. Jeder andere Rückgabewert gibt an, dass ein Fehler aufgetreten ist.

Anforderungen

Zielplattform

Desktop

Header

Mrx.h (einschließlich Mrx.h)

Weitere Informationen

MRxStart

MRxStop