Smartcard-Rückrufparameter
Für alle IOCTL-Anforderungen mit Ausnahme von IOCTL_SMARTCARD_IS_ABSENT und IOCTL_SMARTCARD_IS_PRESENT initialisiert SmartcardDeviceControl (WDM) das IoRequest-Element der SMARTCARD_EXTENSION-Struktur , bevor eine Rückrufroutine aufgerufen wird. In der folgenden Tabelle sind die Initialisierungsarten aufgeführt, die SmartcardDeviceControl ausführt.
Mitglied von IoRequest | Initialisierung durch SmartcardDeviceControl |
---|---|
IoRequest.RequestBuffer |
Speichert die Benutzerdaten, die an den Karte gesendet werden sollen, im Puffer, auf den dieses Mitglied verweist. |
IoRequest.RequestBufferLength |
Speichert die Länge des Benutzerpuffers in diesem Member. |
IoRequest.ReplyBuffer |
Speichert die vom smarten Karte zurückgegebenen Daten im Puffer, auf den dieses Member verweist. |
IoRequest.ReplyBufferLength |
Speichert die Größe des Antwortpuffers in diesem Member. |
IoRequest.Information |
Speichert die Anzahl der Bytes, die tatsächlich vom Karte in der Variablen empfangen wurden, auf die dieses Element verweist. |
MajorIoControlCode |
Speichert den Haupt-E/A-Kontrollcode der IOCTL-Anforderung in diesem Member. |
MinorIoControlCode |
Speichert den Neben-E/A-Steuerungscode (falls vorhanden) der IOCTL-Anforderung in diesem Member. |
Die Struktur, auf die smartcardExtension-OsData> verweist, wird wie in der folgenden Tabelle beschrieben eingerichtet.
Member | BESCHREIBUNG |
---|---|
CurrentIrp |
Empfängt einen Zeiger auf den anfordernden IRP für jede Steuerungsanforderung außer IOCTL_SMARTCARD_IS_ABSENT und IOCTL_SMARTCARD_IS_PRESENT. |
NotificationIrp |
Empfängt einen Zeiger auf den anfordernden IRP für die IOCTL_SMARTCARD_IS_ABSENT- oder IOCTL_SMARTCARD_IS_PRESENT-Steuerungsanforderung. |