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


функция обратного вызова PMRX_IS_LOCK_REALIZABLE (mrx.h)

Подпрограмма MRxIsLockRealizable вызывается RDBSS для запроса на то, что мини-перенаправление сети указывает, поддерживается ли определенная блокировка диапазона байтов в этой NET_ROOT структуре.

Синтаксис

PMRX_IS_LOCK_REALIZABLE PmrxIsLockRealizable;

NTSTATUS PmrxIsLockRealizable(
  IN OUT PMRX_FCB Fcb,
  IN PLARGE_INTEGER ByteOffset,
  IN PLARGE_INTEGER Length,
  IN ULONG LowIoLockFlags
)
{...}

Параметры

Fcb

[in, out] Указатель на структуру FCB.

ByteOffset

[in] Значение, указывающее смещение байтов для блокировки диапазона байтов.

Length

[in] Значение, указывающее длину блокировки диапазона байтов.

LowIoLockFlags

[in] Значение битовой маски, указывающее флаги блокировки ввода-вывода.

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

MRxIsLockRealizable возвращает STATUS_SUCCESS при успешном выполнении или соответствующем значении NTSTATUS, например следующее:

Возвращаемый код Описание
STATUS_NOT_SUPPORTED Запрошенная блокировка диапазона байтов не поддерживается. Мини-перенаправление сети возвращает это значение для запроса блокировки, который не поддерживается, даже если поддерживаются другие типы блокировок диапазона байтов. Неподдерживаемые блокировки могут включать 64-разрядную блокировку (ByteOffset->член HighPart ненулево), блокировки нулевой длины (параметр Длина равно нулю), или общие блокировки (LOWIO_LOCKSFLAG_EXCLUSIVELOCK бит LowIoLockFlags параметр не задан).

Замечания

MRxIsLockRealizable определяет, поддерживается ли для этой структуры NET_ROOT блокировка определенного диапазона байтов. Мини-перенаправление сети может поддерживать определенные блокировки диапазона байтов и не поддерживать другие. Например, мини-перенаправление сети может поддерживать только 32-разрядные блокировки диапазона байтов или монопольные блокировки.

MRxIsLockRealizable вызывается в ответ на получение IRP с IRP_MN_LOCK дополнительной функцией.

Требования

Требование Ценность
целевая платформа Настольный
заголовка mrx.h (include Mrx.h)

См. также

MRxAreFilesAliased

MRxCleanupFobx

MRxCloseSrvOpen

MRxCollapseOpen

MRxCreate

MRxDeallocateForFcb

MRxDeallocateForFobx

MRxExtendForCache

MRxExtendForNonCache

MRxFlush

MRxForceClosed

MRxShouldTryToCollapseThisOpen

MRxTruncate

MRxZeroExtend