Поделиться через


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

Подпрограмма IoCheckShareAccessEx вызывается драйверами файловой системы (FSD) или другими драйверами верхнего уровня, чтобы проверить, разрешен ли общий доступ к объекту файла.

Синтаксис

NTSTATUS IoCheckShareAccessEx(
  [in]      ACCESS_MASK   DesiredAccess,
  [in]      ULONG         DesiredShareAccess,
  [in, out] PFILE_OBJECT  FileObject,
  [in, out] PSHARE_ACCESS ShareAccess,
  [in]      BOOLEAN       Update,
  [in]      PBOOLEAN      WritePermission
);

Параметры

[in] DesiredAccess

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

[in] DesiredShareAccess

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

FILE_SHARE_READ

FILE_SHARE_WRITE

FILE_SHARE_DELETE

[in, out] FileObject

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

[in, out] ShareAccess

Указатель на общую структуру данных общего доступа, связанную с FileObject. Драйверы должны рассматривать эту структуру как непрозрачную.

[in] Update

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

[in] WritePermission

Указывает, имеет ли общий доступ разрешение на запись. Это значение равно TRUE, если у общей папки есть разрешение на запись; в противном случае — ЗНАЧЕНИЕ FALSE. Если значение равно FALSE, а доступ к общей папке имеет разрешение на запись, и вызывающий пытается получить монопольный доступ на чтение, разрешение записи будет понижено до FILE_SHARE_READ. Это значение равно NULL, если проверка разрешений на запись не выполняется при доступе к общей папке.

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

Подпрограмма IoCheckShareAccessEx STATUS_SUCCESS возвращает STATUS_SUCCESS, если доступ запрашивающего к объекту файла совместим с тем, как он открыт в данный момент. Если запрос отклоняется из-за нарушения общего доступа, возвращается STATUS_SHARING_VIOLATION.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Windows 7 и более поздних версиях Windows.
целевая платформа Всеобщий
заголовка wdm.h
библиотеки Ntoskrnl.lib

См. также

подпрограммы диспетчера ввода-вывода