Partager via


IOCTL_INTERNAL_USB_SUBMIT_URB IOCTL (usbioctl.h)

La demande de contrôle d’E/S IOCTL_INTERNAL_USB_SUBMIT_URB est utilisée par les pilotes pour soumettre un URB au pilote de bus.

IOCTL_INTERNAL_USB_SUBMIT_URB est une demande de contrôle d’E/S en mode noyau. Cette requête cible le PDO du hub USB.

Code principal

IRP_MJ_INTERNAL_DEVICE_CONTROL

Mémoire tampon d’entrée

Parameters.Others.Argument1 pointe vers la structure URB, une structure de longueur variable. Le membre UrbHeader.Function de l’URB spécifie le type URB. La longueur de l’URB, ainsi que la signification de tous les membres supplémentaires dépend de la valeur de UrbHeader.Function. Pour plus d’informations, consultez URB.

Longueur de la mémoire tampon d’entrée

Le membre UrbHeader.Length spécifie la taille en octets de l’URB.

Mémoire tampon de sortie

Parameters.Others.Argument1 pointe vers la structure URB. Le UrbHeader.Status contient un code d’état USB pour l’opération demandée. Toute sortie supplémentaire dépend de la UrbHeader.Function membre de l’URB envoyé. Pour plus d’informations, consultez URB.

Longueur de la mémoire tampon de sortie

Le membre UrbHeader.Length spécifie la taille en octets de l’URB.

Bloc d’état

Les pilotes de niveau inférieur définissent Irp->IoStatus.Status sur STATUS_SUCCESS si l’URB peut être traité avec succès. Sinon, le pilote de bus le définit sur la condition d’erreur appropriée, telle que STATUS_INVALID_PARAMETER ou STATUS_INSUFFICIENT_RESOURCES.

Exigences

Exigence Valeur
d’en-tête usbioctl.h (include Usbioctl.h)

Voir aussi

URB