Partager via


PMRX_IS_LOCK_REALIZABLE fonction de rappel (mrx.h)

La routine MRxIsLockRealizable est appelée par RDBSS pour demander à un mini-redirecteur réseau d’indiquer si un verrou de plage d’octets spécifique est pris en charge sur cette structure NET_ROOT.

Syntaxe

PMRX_IS_LOCK_REALIZABLE PmrxIsLockRealizable;

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

Paramètres

Fcb

[in, out] Pointeur vers la structure FCB.

ByteOffset

[in] Valeur indiquant le décalage d’octets pour le verrou de plage d’octets.

Length

[in] Valeur indiquant la longueur du verrou de plage d’octets.

LowIoLockFlags

[in] Valeur avec un masque de bits indiquant les indicateurs de verrouillage d’E/S.

Valeur retournée

MRxIsLockRealizable retourne STATUS_SUCCESS sur la réussite ou une valeur NTSTATUS appropriée, telle que :

Code de retour Description
STATUS_NOT_SUPPORTED Le verrou de plage d’octets demandé n’est pas pris en charge. Un mini-redirecteur réseau retourne cette valeur pour une demande de verrou qui n’est pas prise en charge même si d’autres types de verrous de plage d’octets sont pris en charge. Les verrous non pris en charge peuvent inclure des verrous 64 bits (le membre ByteOffset-HighPart> est différent de zéro), des verrous de longueur nulle (le paramètre Length est égal à zéro) ou des verrous partagés (le LOWIO_LOCKSFLAG_EXCLUSIVELOCK bit du paramètre LowIoLockFlags n’est pas défini).

Remarques

MRxIsLockRealizable détermine si le verrou de plage d’octets spécifique demandé est pris en charge sur cette structure NET_ROOT. Un mini-redirecteur réseau peut prendre en charge certains verrous de plage d’octets et ne pas prendre en charge d’autres. Par exemple, un mini-redirecteur réseau peut uniquement prendre en charge les verrous de plage d’octets 32 bits ou les verrous exclusifs.

MRxIsLockRealizable est appelé en réponse à la réception d’un IRP avec la fonction mineure IRP_MN_LOCK.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête mrx.h (inclure Mrx.h)

Voir aussi

MRxAreFilesAliased

MRxCleanupFobx

MRxCloseSrvOpen

MRxCollapseOpen

MRxCreate

MRxDeallocateForFcb

MRxDeallocateForFobx

MRxExtendForCache

MRxExtendForNonCache

MRxFlush

MRxForceClosed

MRxShouldTryToCollapseThiseOpen

MRxTruncate

MRxZeroExtend