RxAcquireSharedFcbResourceInMRx, fonction (mrxfcb.h)

RxAcquireSharedFcbResourceInMRx acquiert la ressource FCB pour un pilote de mini-redirecteur réseau en mode partagé. Cette routine attend que la ressource FCB soit gratuite si elle a été acquise exclusivement et ne retourne pas le contrôle tant que la ressource partagée n’a pas été acquise.

Syntaxe

NTSTATUS RxAcquireSharedFcbResourceInMRx(
  PMRX_FCB Fcb
);

Paramètres

Fcb

Pointeur vers le fcb. Ce paramètre est obligatoire et ne peut pas être NULL.

Valeur retournée

RxAcquireSharedFcbResourceInMRx retourne STATUS_SUCCESS en cas de réussite ou l’un des codes d’erreur suivants en cas d’échec :

Code de retour Description
STATUS_LOCK_NOT_GRANTED
La ressource FCB n’a pas été acquise.
STATUS_CANCELLED
La RX_CONTEXT associée au fcb a été annulée.

Remarques

Les ressources de synchronisation intéressantes pour un pilote de mini-redirecteur réseau sont principalement associées au fcb. Il existe une ressource d’E/S de pagination et une ressource régulière. La ressource d’E/S de pagination est gérée en interne par RDBSS. La seule ressource accessible à un pilote de mini-redirecteur réseau est la ressource normale qui doit être accessible à l’aide de RxAcquireExclusiveFcbResourceInMRx, RxAcquireExclusiveFcbResourceInMRxEx ou RxAcquireSharedFcbResourceInMRx, selon le mode acquis souhaité.

RxAcquireSharedFcbResourceInMRx attend que la ressource FCB soit gratuite si elle a été acquise exclusivement et ne retourne pas le contrôle tant que la ressource partagée n’a pas été acquise. Cette routine acquiert la ressource FCB même si le RX_CONTEXT associé à ce fcb a été annulé.

Une ressource FCB acquise avec RxAcquireSharedFcbResourceInMRx doit être libérée en appelant RxReleaseFcbResourceInMRx ou RxReleaseFcbResourceForThreadInMRx.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête mrxfcb.h (inclure Mrxfcb.h)
IRQL <= APC_LEVEL

Voir aussi

RxAcquireExclusiveFcbResourceInMRx

RxAcquireSharedFcbResourceInMRxEx

RxReleaseFcbResourceForThreadInMRx

RxReleaseFcbResourceInMRx