Функция IoUpdateLinkShareAccess (wdm.h)
Программа IoUpdateLinkShareAccess обновляет общий доступ для данного объекта файла, как правило, при открытии файла.
Синтаксис
void IoUpdateLinkShareAccess(
[in] PFILE_OBJECT FileObject,
[in, out] PSHARE_ACCESS ShareAccess,
[in, out, optional] PLINK_SHARE_ACCESS LinkShareAccess
);
Параметры
[in] FileObject
Указатель на объект файла, который обычно закрывается текущим потоком.
[in, out] ShareAccess
Указатель на общую структуру данных общего доступа, связанную с FileObject. Драйверы должны рассматривать эту структуру как непрозрачную.
[in, out, optional] LinkShareAccess
Указатель на общую структуру данных общего доступа (LINK_SHARE_ACCESS), связанную с FileObject. Драйверы должны рассматривать эту структуру как непрозрачную.
Возвращаемое значение
Никакой
Замечания
IoUpdateLinkShareAccess не является атомарной операцией. Поэтому драйверы, вызывающие эту подпрограмму, должны защитить общий файловый объект, переданный в IoUpdateLinkShareAccess с помощью какой-либо блокировки, например мьютекса или блокировки ресурсов, чтобы предотвратить повреждение счетчиков общего доступа.
Перед вызовом IoUpdateLinkShareAccessвызывающий объект должен успешно вызывать IoCheckLinkShareAccess с Update значение False. Такой вызов IoCheckLinkShareAccess определяет, совместим ли запрошенный общий доступ с способом доступа к объекту файла в настоящее время другим открытием, но он не обновляет структуру SHARE_ACCESS. IoUpdateLinkShareAccess фактически обновляет структуру SHARE_ACCESS, связанную с объектом файла.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 10 версии 1709 |
минимальный поддерживаемый сервер | Windows Server 2016 |
целевая платформа | Всеобщий |
заголовка | wdm.h |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |