IOCTL_KS_RESET_STATE IOCTL (ks.h)
Une application peut utiliser IOCTL_KS_RESET_STATE pour retourner une épingle à l’état dans lequel elle se trouvait au moment de l’acquisition. L’application transmet IOCTL_KS_RESET_STATE avec les paramètres décrits ci-dessous à la fonction KsSynchronousDeviceControl .
Code principal
Mémoire tampon d'entrée
Un client fournit une mémoire tampon qui contient la valeur de réinitialisation (KSRESET_BEGIN, KSRESET_END) dans le paramètre InBuffer .
Longueur de la mémoire tampon d’entrée
InLength spécifie la taille, en octets, du contenu de la mémoire tampon d’entrée.
Mémoire tampon de sortie
Aucun.
Longueur de la mémoire tampon de sortie
Aucun.
Bloc d’état
Si la demande réussit, le membre Status est défini sur STATUS_SUCCESS.
Remarques
Lancez une réinitialisation sur une broche en envoyant IOCTL_KS_RESET_STATE avec la valeur KSRESET_BEGIN dans le paramètre InBuffer de KsSynchronousDeviceControl.
Lorsque l’état de réinitialisation est lancé, les demandes de lecture et d’écriture existantes sont annulées. Dans l’état de réinitialisation, toutes les nouvelles demandes de lecture ou d’écriture sont rejetées avec STATUS_DEVICE_NOT_READY.
Pour arrêter l’état de réinitialisation, envoyez IOCTL_KS_RESET_STATE avec la valeur KSRESET_END.
Notez que l’état de réinitialisation n’est pas annulé en modifiant l’état de l’épingle.
Lorsque l’état de réinitialisation est terminé, l’épingle peut à nouveau accepter de nouvelles données et transmettre des données à d’autres connexions.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | ks.h (inclure Ks.h) |