MRxQueryQuotaInfo-Routine
Die MRxQueryQuotaInfo-Routine wird von RDBSS aufgerufen, um anzufordern, dass eine Netzwerkminiumleitung Kontingentinformationen für ein Dateisystemobjekt abfragt.
Syntax
PMRX_CALLDOWN MRxQueryQuotaInfo;
NTSTATUS MRxQueryQuotaInfo(
_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
MRxQueryQuotaInfo gibt STATUS_SUCCESS bei Erfolg oder einen entsprechenden NTSTATUS-Wert zurück, z. B. einen der folgenden:
Rückgabecode | Beschreibung |
---|---|
STATUS_ACCESS_DENIED | Dem Aufrufer fehlte die richtige Sicherheit für diesen Vorgang. |
STATUS_BUFFER_OVERFLOW | Der Puffer zum Empfangen der Kontingentinformationen war zu klein. Dieser Rückgabewert sollte als erfolgreich betrachtet werden, und so viele gültige Daten wie möglich sollten im Info.Buffer-Member der RX_CONTEXT Struktur zurückgegeben werden, auf die der RxContext-Parameter verweist. |
STATUS_BUFFER_TOO_SMALL | Der Puffer ist zu klein, um die angeforderten Daten zu empfangen. Wenn dieser Wert zurückgegeben wird, sollte das InformationToReturn-Element der RX_CONTEXT Struktur, auf die der RxContext-Parameter verweist, auf die Mindestgröße des erwarteten Puffers festgelegt werden, damit der Aufruf erfolgreich ist. |
STATUS_CONNECTION_DISCONNECTED | Die Verbindung wurde getrennt. Dies ist ein Fehlercode. |
STATUS_INSUFFICIENT_RESOURCES | Es waren nicht genügend Ressourcen vorhanden, um die Abfrage abzuschließen. Dies ist ein Fehlercode. |
STATUS_INVALID_PARAMETER | Ein ungültiger Parameter wurde angegeben. Dies ist ein Fehlercode. |
STATUS_NOT_SUPPORTED | Kontingente werden nicht unterstützt. |
Hinweise
RDBSS stellt einen Aufruf von MRxQueryQuotaInfo als Reaktion auf den Empfang einer IRP_MJ_QUERY_QUOTA-Anforderung aus.
Vor dem Aufrufen von MRxQueryQuotaInfo ändert RDBSS die folgenden Member in der RX_CONTEXT Struktur, auf die der RxContext-Parameter verweist:
Das Info.Buffer-Element ist auf Benutzerpuffer aus E/A-Anforderungspaket festgelegt. Dieser Puffer wurde bei Bedarf bereits von RDBSS gesperrt.
Das Info.LengthRemaining-Element ist auf IrpSp-Parameters.QueryQuota.Length> festgelegt.
Das QueryQuota.SidList-Element ist auf IrpSp-Parameters.QueryQuota.SidList> festgelegt.
Das QueryQuota.SidListLength-Element ist auf IrpSp-Parameters.QueryQuota.SidListLength> festgelegt.
Das QueryQuota.StartSid-Element ist auf IrpSp-Parameters.QueryQuota.StartSid> festgelegt.
Das QueryQuota.Length-Element ist auf IrpSp-Parameters.QueryQuota.Length> festgelegt.
Der QueryQuota.RestartScan-Member ist auf nonzero festgelegt, wenn für IrpSp-Flags> das SL_RESTART_SCAN Bit festgelegt ist.
Der QueryQuota.ReturnSingleEntry-Member ist auf nonzero festgelegt, wenn IrpSp-Flags> das SL_RETURN_SINGLE_ENTRY Bit festgelegt hat.
Der QueryQuota.IndexSpecified-Member ist auf nonzero festgelegt, wenn für IrpSp-Flags> das SL_INDEX_SPECIFIED Bit festgelegt ist.
Bei Erfolg sollte der Netzwerkminiumleitungsor den Info.LengthRemaining-Member der RX_CONTEXT-Struktur auf die Länge der zurückzugebenden Kontingentinformationen festlegen. Wenn der Aufruf von MRxQueryQuotaInfo erfolgreich war, legt RDBSS den IoStatus.Information-Member des IRP auf den Info.LengthRemaining-Member von RX_CONTEXT fest.
Wenn der Aufruf von MRxQueryQuotaInfo erfolgreich ist, sollte das InformationToReturn-Element der RX_CONTEXT-Struktur auf die Länge der zurückgegebenen Kontingentinformationen festgelegt werden. Wenn der Aufruf nicht erfolgreich ist, sollte das InformationToReturn-Element von RX_CONTEXT auf 0 festgelegt werden.
Anforderungen
Zielplattform |
Desktop |
Header |
Mrx.h (einschließlich Mrx.h) |