Partager via


Paramètres de rappel de carte à puce

Pour toutes les requêtes IOCTL à l’exception des IOCTL_SMARTCARD_IS_ABSENT et IOCTL_SMARTCARD_IS_PRESENT, SmartcardDeviceControl (WDM) initialise le membre IoRequest de la structure SMARTCARD_EXTENSION avant d’appeler une routine de rappel. Le tableau suivant indique les types d’initialisation effectuées par SmartcardDeviceControl .

Membre d’IoRequest Initialisation effectuée par SmartcardDeviceControl

IoRequest.RequestBuffer

Stocke les données utilisateur à envoyer au carte dans la mémoire tampon vers laquelle pointe ce membre.

IoRequest.RequestBufferLength

Stocke la longueur de la mémoire tampon utilisateur dans ce membre.

IoRequest.ReplyBuffer

Stocke les données retournées par le carte intelligent dans la mémoire tampon vers laquelle pointe ce membre.

IoRequest.ReplyBufferLength

Stocke la taille de la mémoire tampon de réponse dans ce membre.

IoRequest.Information

Stocke le nombre d’octets réellement reçus du carte dans la variable vers laquelle pointe ce membre.

MajorIoControlCode

Stocke le code de contrôle d’E/S principal de la requête IOCTL dans ce membre.

MinorIoControlCode

Stocke le code de contrôle d’E/S secondaire (le cas échéant) de la requête IOCTL dans ce membre.

La structure pointée par SmartcardExtension-OsData> est configurée comme décrit dans le tableau suivant.

Membre Description

CurrentIrp

Reçoit un pointeur vers la demande d’IRP pour chaque demande de contrôle , à l’exception des IOCTL_SMARTCARD_IS_ABSENT et des IOCTL_SMARTCARD_IS_PRESENT.

NotificationIrp

Reçoit un pointeur vers l’IRP de demande pour la demande de contrôle IOCTL_SMARTCARD_IS_ABSENT ou IOCTL_SMARTCARD_IS_PRESENT.