Freigeben über


IoRemoveLinkShareAccess-Funktion (wdm.h)

Die IoRemoveLinkShareAccess-Routine entfernt die Zugriffs- und Verknüpft-Freigabezugriffsinformationen für eine bestimmte geöffnete instance eines Dateiobjekts.

Syntax

void IoRemoveLinkShareAccess(
  [in]                PFILE_OBJECT       FileObject,
  [in, out]           PSHARE_ACCESS      ShareAccess,
  [in, out, optional] PLINK_SHARE_ACCESS LinkShareAccess
);

Parameter

[in] FileObject

Zeiger auf das Dateiobjekt, das normalerweise vom aktuellen Thread geschlossen wird.

[in, out] ShareAccess

Ein Zeiger auf die gemeinsame Freigabezugriffsdatenstruktur, die FileObject zugeordnet ist. Treiber sollten diese Struktur als undurchsichtig behandeln.

[in, out, optional] LinkShareAccess

Ein Zeiger auf die common link share-access data structure (LINK_SHARE_ACCESS), die FileObject zugeordnet ist. Treiber sollten diese Struktur als undurchsichtig behandeln.

Rückgabewert

Keine

Bemerkungen

Diese Routine ist ein Kehrwert von IoUpdateLinkShareAccess.

IoRemoveLinkShareAccess ist kein atomischer Vorgang. Daher müssen Treiber, die diese Routine aufrufen, das freigegebene Dateiobjekt, das an IoRemoveLinkShareAccess übergeben wird, durch eine Art von Sperre, z. B. einen Mutex oder eine Ressourcensperre, schützen, um eine Beschädigung der Anzahl der freigegebenen Zugriffe zu verhindern.

Aufrufer von IoRemoveLinkShareAccess 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) Windows 10, Version 1709
Unterstützte Mindestversion (Server) Windows Server 2016
Zielplattform Universell
Header wdm.h
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Weitere Informationen

IoCheckLinkShareAccess

IoSetLinkShareAccess

IoUpdateLinkShareAccess