Routine MRxStop
La routineMRxStop est appelée par RDBSS pour arrêter le mini-redirecteur réseau.
Syntaxe
PMRX_CALLDOWN_CTX MRxStop;
NTSTATUS MRxStop(
_Inout_ PRX_CONTEXT RxContext,
_Inout_ PRDBSS_DEVICE_OBJECT RxDeviceObject
)
{ ... }
Paramètres
RxContext [in, out]
Pointeur vers la structure RX_CONTEXT. Ce paramètre contient l’IRP qui a demandé l’arrêt du mini-redirecteur réseau.
RxDeviceObject [in, out]
Pointeur vers la structure RDBSS_DEVICE_OBJECT pour ce mini-redirecteur réseau.
Valeur retournée
MRxStop retourne STATUS_SUCCESS en cas de réussite ou une valeur NTSTATUS appropriée, par exemple :
Code de retour | Description |
---|---|
STATUS_REDIRECTOR_HAS_OPEN_HANDLES | Le mini-redirecteur réseau a des descripteurs ouverts qui l’empêchent de s’arrêter pour l’instant. |
STATUS_REDIRECTOR_NOT_STARTED | Le mini-redirecteur réseau n’a pas été démarré. |
Remarques
MRxStop arrête et annule l’initialisation du mini-redirecteur réseau du point de vue de RDBSS. L’arrêt du mini-redirecteur réseau peut probablement nécessiter la libération d’allocations de mémoire et d’autres ressources système.
Avant d’appeler MRxStop, RDBSS modifie les valeurs suivantes :
Le membre MajorFunction dans la structure RX_CONTEXT pointée par RxContext est défini sur la fonction principale de l’IRP.
Le membre LowIoContext.ParamsFor.FsCtl.FsControlCode dans la structure RX_CONTEXT pointée par RxContext est défini sur le code FSCTL pour l’IRP s’il s’agissait d’une requête FSTCL utilisée pour arrêter le mini-redirecteur réseau.
Le membre StartStopContext.State de la structure RDBSS_DEVICE_OBJECT pointée par RxDeviceObject est défini sur RDBSS_STOP_IN_PROGRESS
Le membre StartStopContext.pStopContext de la structure RDBSS_DEVICE_OBJECT pointée par RxDeviceObject est défini sur le paramètre RxContext .
MRxStop est appelé par RDBSS à partir de la routine RxStopMinirdr .
Si MRxStop retourne STATUS_SUCCESS, la routine a réussi. Toute autre valeur de retour indique qu’une erreur s’est produite lors de l’arrêt du mini-redirecteur réseau.
Si MRxStop retourne STATUS_SUCCESS, RDBSS définit l’état de RDBSS sur RDBSS_STARTABLE. Cet état est stocké dans le membre StartStopContext.State de la structure RDBSS_DEVICE_OBJECT pointée par RxDeviceObject.
Un mini-redirecteur réseau conserve normalement une variable interne indiquant si le mini-redirecteur réseau est démarré. Par exemple, un mini-redirecteur réseau peut suivre quand il est arrêté, démarré et quand une opération de démarrage ou d’arrêt est en cours.
Configuration requise
Plateforme cible |
Desktop (Expérience utilisateur) |
En-tête |
Mrx.h (inclure Mrx.h) |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour