IoRemoveShareAccess-Funktion (wdm.h)
Die IoRemoveShareAccess-Routine entfernt die Zugriffs- und Freigabezugriffsinformationen für eine bestimmte offene instance eines Dateiobjekts.
Syntax
void IoRemoveShareAccess(
[in] PFILE_OBJECT FileObject,
[in, out] PSHARE_ACCESS ShareAccess
);
Parameter
[in] FileObject
Zeiger auf das Dateiobjekt, das normalerweise vom aktuellen Thread geschlossen wird.
[in, out] ShareAccess
Zeiger auf die Freigabezugriffsstruktur, die beschreibt, wie auf das offene Dateiobjekt derzeit zugegriffen wird.
Rückgabewert
Keine
Bemerkungen
Diese Routine ist ein Kehrwert zu IoUpdateShareAccess.
IoRemoveShareAccess ist kein atomischer Vorgang. Daher müssen Treiber, die diese Routine aufrufen, das freigegebene Dateiobjekt, das an IoRemoveShareAccess übergeben wird, durch eine Art von Sperre wie ein Mutex oder eine Ressourcensperre schützen, um eine Beschädigung der Anzahl der freigegebenen Zugriffe zu verhindern.
Aufrufer von IoRemoveShareAccess müssen unter IRQL = PASSIVE_LEVEL und im Kontext des Threads ausgeführt werden, der das Schließen des FileObject angefordert hat.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows 2000. |
Zielplattform | Universell |
Header | wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (siehe Abschnitt "Hinweise") |
DDI-Complianceregeln | HwStorPortProhibitedDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm) |