IoUpdateShareAccess 函数 (wdm.h)
IoUpdateShareAccess 例程更新给定文件对象的共享访问,通常是打开文件时。
语法
void IoUpdateShareAccess(
[in] PFILE_OBJECT FileObject,
[in, out] PSHARE_ACCESS ShareAccess
);
参数
[in] FileObject
指向引用的文件对象的指针,该对象表示要为其更新共享访问的文件或关联的设备对象。
[in, out] ShareAccess
指向与 FileObject关联的常见 SHARE_ACCESS 结构的指针。 驱动程序应将此结构视为不透明。
返回值
没有
言论
IoUpdateShareAccess 不是原子作。 因此,调用此例程的驱动程序必须通过某种锁(如互斥锁或资源锁)来保护传递给 IoUpdateShareAccess 的共享文件对象,以防止共享访问计数损坏。
调用 IoUpdateShareAccess之前,调用方必须成功调用 IoCheckShareAccess,Update 设置为 False。 此类调用 IoCheckShareAccess 确定请求的共享访问是否与文件对象当前被其他打开访问的方式兼容,但它不会更新 SHARE_ACCESS 结构。 IoUpdateShareAccess 实际上更新与文件对象关联的 SHARE_ACCESS 结构。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 2000 开始可用。 |
目标平台 | 普遍 |
标头 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
库 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | HwStorPortProhibitedDIS(storport)、IrqlIoPassive5(wdm)、PowerIrpDDis(wdm) |