IoUpdateLinkShareAccess-Funktion (wdm.h)
Die IoUpdateLinkShareAccess-Routine aktualisiert den Freigabezugriff für das angegebene Dateiobjekt, in der Regel, wenn die Datei geöffnet wird.
Syntax
void IoUpdateLinkShareAccess(
[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 allgemeine Share-Access-Datenstruktur, die FileObject zugeordnet ist. Treiber sollten diese Struktur als undurchsichtig behandeln.
[in, out, optional] LinkShareAccess
Ein Zeiger auf die allgemeine Linkfreigabezugriffsdatenstruktur (LINK_SHARE_ACCESS), die FileObject zugeordnet ist. Treiber sollten diese Struktur als undurchsichtig behandeln.
Rückgabewert
Keine
Bemerkungen
IoUpdateLinkShareAccess ist kein atomer Vorgang. Daher müssen Treiber, die diese Routine aufrufen, das freigegebene Dateiobjekt, das an IoUpdateLinkShareAccess übergeben wird, durch eine Art von Sperrung schützen, z. B. eine Mutex- oder eine Ressourcensperre, um die Beschädigung der Anzahl der freigegebenen Zugriffe zu verhindern.
Bevor Sie IoUpdateLinkShareAccess aufrufen, muss der Aufrufer IoCheckLinkShareAccess erfolgreich aufrufen, wobei "Update " auf "False" festgelegt ist. Ein solcher Aufruf von IoCheckLinkShareAccess bestimmt, ob der angeforderte freigegebene Zugriff mit der Art und Weise kompatibel ist, wie das Dateiobjekt derzeit von anderen Geöffneten zugegriffen wird, aber die SHARE_ACCESS Struktur nicht aktualisiert. IoUpdateLinkShareAccess aktualisiert tatsächlich die SHARE_ACCESS Struktur, die dem Dateiobjekt zugeordnet ist.
Anforderungen
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 |