Функция IoRemoveShareAccess (wdm.h)
Программа IoRemoveShareAccess удаляет сведения о доступе и совместном доступе для данного открытого экземпляра объекта файла.
void IoRemoveShareAccess(
[in] PFILE_OBJECT FileObject,
[in, out] PSHARE_ACCESS ShareAccess
);
[in] FileObject
Указатель на объект файла, который обычно закрывается текущим потоком.
[in, out] ShareAccess
Указатель на структуру общего доступа, которая описывает доступ к открытому объекту файлов в настоящее время.
Никакой
Эта подпрограмма является взаимной IoUpdateShareAccess.
IoRemoveShareAccess не является атомарной операцией. Таким образом, драйверы, вызывающие эту подпрограмму, должны защитить общий файловый объект, переданный в IoRemoveShareAccess с помощью какой-то блокировки, например мьютекса или блокировки ресурсов, чтобы предотвратить повреждение счетчиков общего доступа.
Вызывающие IoRemoveShareAccess должны выполняться в IRQL = PASSIVE_LEVEL и в контексте потока, запрашивающего закрытие FileObject.
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 2000. |
целевая платформа | Всеобщий |
заголовка | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (см. раздел "Примечания") |
правил соответствия DDI | HwStorPortProhibitedDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm) |