IoUpdateShareAccess-Funktion (wdm.h)
Die IoUpdateShareAccess-Routine aktualisiert den Freigabezugriff für das angegebene Dateiobjekt, in der Regel, wenn die Datei geöffnet wird.
Syntax
void IoUpdateShareAccess(
[in] PFILE_OBJECT FileObject,
[in, out] PSHARE_ACCESS ShareAccess
);
Parameter
[in] FileObject
Zeiger auf ein Dateiobjekt, auf das verwiesen wird, das die Datei oder das zugeordnete Geräteobjekt darstellt, für das der Freigabezugriff aktualisiert werden soll.
[in, out] ShareAccess
Zeiger auf die allgemeine SHARE_ACCESS Struktur, die dem FileObject zugeordnet ist. Treiber sollten diese Struktur als undurchsichtig behandeln.
Rückgabewert
Keine
Bemerkungen
IoUpdateShareAccess ist kein atomischer Vorgang. Daher müssen Treiber, die diese Routine aufrufen, das freigegebene Dateiobjekt schützen, das an IoUpdateShareAccess übergeben wird, durch eine Art von Sperre, z. B. ein Mutex oder eine Ressourcensperre, um eine Beschädigung der Anzahl der freigegebenen Zugriffe zu verhindern.
Vor dem Aufrufen von IoUpdateShareAccess muss der Aufrufer ioCheckShareAccess erfolgreich aufrufen, wobei Update auf False festgelegt ist. Ein solcher Aufruf von IoCheckShareAccess bestimmt, ob der angeforderte freigegebene Zugriff mit der Art und Weise kompatibel ist, wie derzeit von anderen Geöffneten auf das Dateiobjekt zugegriffen wird, aber die SHARE_ACCESS-Struktur wird nicht aktualisiert. IoUpdateShareAccess aktualisiert tatsächlich die SHARE_ACCESS Struktur, die dem Dateiobjekt zugeordnet ist.
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 |
DDI-Complianceregeln | HwStorPortProhibitedDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm) |