UcmTcpciPortControllerStart, fonction (ucmtcpciportcontroller.h)
Indique à l’extension de classe UcmTcpciCx que le pilote client est maintenant prêt à traiter les demandes matérielles pour le contrôleur de port.
Syntaxe
NTSTATUS UcmTcpciPortControllerStart(
UCMTCPCIPORTCONTROLLER PortControllerObject
);
Paramètres
PortControllerObject
Gérez l’objet du contrôleur de port reçu par le pilote client lors de l’appel précédent à UcmTcpciPortControllerCreate.
Valeur de retour
(NTSTATUS) La méthode retourne STATUS_SUCCESS si l’opération réussit. Dans le cas contraire, cette méthode peut retourner un code d’erreur NTSTATUS approprié.
Retourner le code | Description |
---|---|
|
Le contrôleur de port est déjà dans l’état de démarrage. |
|
La file d’attente de requêtes matérielles n’a pas été définie en appelant UcmTcpciPortControllerSetHardwareRequestQueue. |
Remarques
Une fois que le pilote client a reçu le handle UCMPORTCONTROLLER pour l’objet du contrôleur de port, le pilote appelle cette méthode pour notifier l’extension de classe que le pilote peut commencer à recevoir des demandes matérielles. Cet appel de méthode permet au pilote client d’effectuer l’initialisation de son espace de contexte d’infrastructure sur l’objet du contrôleur de port, avant que l’extension de classe puisse appeler les fonctions de rappel du pilote ou les demandes pour l’objet du contrôleur de port. Le pilote ne peut pas appeler UcmTcpciPortControllerAlert ou UcmTcpciPortControllerStop jusqu’au démarrage du contrôleur de port.
Le pilote client appelle cette méthode juste après avoir appelé UcmTcpciPortControllerCreate et initialisé sa structure de contexte, si elle a été spécifiée dans la structure WDF_OBJECT_ATTRIBUTES comme valeur de paramètre Attributes. Le pilote doit supposer que l’extension de classe peut envoyer des demandes même avant UcmTcpciPortControllerStart retourne, c’est-à-dire à partir de cet appel DDI. Si le pilote tient un verrou lors de l’appel de UcmTcpciPortControllerStart et tente également d’acquérir un verrou lors de la gestion d’une demande matérielle (dans son rappel de file d’attente de demandes matérielles), il peut entraîner un blocage.
Un appel à UcmTcpciPortControllerStart pour démarrer un objet de contrôleur de port déjà dans l’état de démarrage, entraîne une erreur.
Au démarrage, si le BIOS avait déjà négocié un contrat, UcmTcpciCx commence à partir d’un état non attaché.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 10 |
serveur minimum pris en charge | Windows Server 2016 |
plateforme cible | Windows |
d’en-tête | ucmtcpciportcontroller.h |
bibliothèque | Ucmtcpcicxstub.lib |
IRQL | PASSIVE_LEVEL |