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
Zeigen Sie auf ein objekt, 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
Nichts
Bemerkungen
IoUpdateShareAccess- ist keine Atomoperation. Daher müssen Treiber, die diese Routine aufrufen, das freigegebene Dateiobjekt, das an IoUpdateShareAccess übergeben wird, durch eine Art von Sperre schützen, z. B. einen Mutex oder eine Ressourcensperre, um beschädigungen der Anzahl des freigegebenen Zugriffs zu verhindern.
Vor dem Aufrufen IoUpdateShareAccess-muss der Aufrufer erfolgreich IoCheckShareAccess- 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 das Dateiobjekt derzeit von anderen Geöffneten aufgerufen wird, aber die SHARE_ACCESS Struktur nicht aktualisiert. IoUpdateShareAccess aktualisiert tatsächlich die SHARE_ACCESS Struktur, die dem Dateiobjekt zugeordnet ist.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Ab Windows 2000 verfügbar. |
Zielplattform- | Universal |
Header- | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | PASSIVE_LEVEL |
DDI-Complianceregeln | HwStorPortProhibitedDDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm) |