Функция IoRemoveShareAccess (wdm.h)

Подпрограмма IoRemoveShareAccess удаляет сведения о доступе и общем доступе для данного открытого экземпляра файлового объекта.

Синтаксис

void IoRemoveShareAccess(
  [in]      PFILE_OBJECT  FileObject,
  [in, out] PSHARE_ACCESS ShareAccess
);

Параметры

[in] FileObject

Указатель на файловый объект, который обычно закрывается текущим потоком.

[in, out] ShareAccess

Указатель на структуру общего доступа, которая описывает, как в настоящее время осуществляется доступ к объекту открытого файла.

Возвращаемое значение

None

Remarks

Эта процедура является взаимной для IoUpdateShareAccess.

IoRemoveShareAccess не является атомарной операцией. Поэтому драйверы, вызывающие эту подпрограмму, должны защищать объект общего файла, передаваемый в IoRemoveShareAccess с помощью какой-либо блокировки, например мьютекса или блокировки ресурсов, чтобы предотвратить повреждение общего количества доступа.

Вызывающие объекты IoRemoveShareAccess должны выполняться в среде IRQL = PASSIVE_LEVEL и в контексте потока, запрашивающего закрытие FileObject .

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с 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)

См. также раздел

IoCheckShareAccess

IoSetShareAccess

IoUpdateShareAccess