ISCardISO7816::P utData-Methode
[Die PutData-Methode ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt Anforderungen angegeben sind. Es ist nicht für die Verwendung in Windows Server 2003 mit Service Pack 1 (SP1) und höher, Windows Vista, Windows Server 2008 und nachfolgenden Versionen des Betriebssystems verfügbar. Die Smartcardmodule bieten ähnliche Funktionen.]
Die PutData-Methode erstellt einen APDU-Befehl (Application Protocol Data Unit), der je nach ausgewählter Datei ein einzelnes primitives Datenobjekt oder einen Satz von Datenobjekten speichert, die in einem konstruierten Datenobjekt enthalten sind.
Wie die Objekte gespeichert werden (einmaliges Schreiben und/oder Aktualisieren und/oder Anfügen), hängt von der Definition oder der Art der Datenobjekte ab.
Syntax
HRESULT PutData(
[in] BYTE byP1,
[in] BYTE byP2,
[in] LPBYTEBUFFER pData,
[in, out] LPSCARDCMD *ppCmd
);
Parameter
-
byP1 [ In]
-
Codierung von P1-P2.
Wert Bedeutung - 0000 - 003F
Rfu - 0040 - 00FF
BER-TLV-Tag (1 Byte) in P2 - 0100 - 01FF
Anwendungsdaten (proprietäre Codierung) - 0200 - 02FF
SIMPLE-TLV-Tag in P2 - 0300 - 03FF
Rfu - 0400 - 04FF
BER-TLV-Tag (2 Bytes) in P1-P2 -
byP2 [ In]
-
Codierung von P1-P2.
Wert Bedeutung - 0000 - 003F
Rfu - 0040 - 00FF
BER-TLV-Tag (1 Byte) in P2 - 0100 - 01FF
Anwendungsdaten (proprietäre Codierung) - 0200 - 02FF
SIMPLE-TLV-Tag in P2 - 0300 - 03FF
Rfu - 0400 - 04FF
BER-TLV-Tag (2 Bytes) in P1-P2 -
pData [ In]
-
Zeiger auf einen Bytepuffer, der die zu schreibenden Parameter und Daten enthält.
-
ppCmd [ in, out]
-
Bei der Eingabe ein Zeiger auf ein ISCardCmd-Schnittstellenobjekt oder NULL.
Bei der Rückgabe wird er mit dem APDU-Befehl gefüllt, der von diesem Vorgang erstellt wurde. Wenn ppCmd auf NULL festgelegt wurde, wird intern ein ISCardCmd-Smartcardobjekt erstellt und mit dem ppCmd-Zeiger zurückgegeben.
Rückgabewert
Die -Methode gibt einen der folgenden möglichen Werte zurück.
| Rückgabecode | Beschreibung |
|---|---|
|
Operation erfolgreich abgeschlossen. |
|
Ungültiger Parameter. |
|
Ein ungültiger Zeiger wurde übergeben. |
|
Nicht genügend Arbeitsspeicher. |
Hinweise
Der Befehl kann nur ausgeführt werden, wenn der Sicherheitsstatus die von der Anwendung im Kontext für die Funktion definierten Sicherheitsbedingungen erfüllt.
-
Store Anwendungsdaten
-
Wenn der Wert von P1-P2 im Bereich von 0100 bis 01FF liegt, muss der Wert von P1-P2 ein Bezeichner sein, der für interne Kartentests und proprietäre Dienste reserviert ist, die innerhalb eines bestimmten Anwendungskontexts sinnvoll sind.
-
Store Datenobjekte
-
Wenn der Wert P1-P2 im Bereich von 0040 bis 00FF liegt, muss der Wert von P2 ein BER-TLV-Tag für ein einzelnes Byte sein. Der Wert 00FF ist für den Hinweis reserviert, dass das Datenfeld BER-TLV-Datenobjekte enthält.
Wenn der Wert von P1-P2 im Bereich von 0200 bis 02FF liegt, muss der Wert von P2 ein SIMPLE-TLV-Tag sein. Der Wert 0200 ist RFU. Der Wert 02FF ist für den Hinweis reserviert, dass das Datenfeld SIMPLE-TLV-Datenobjekte enthält.
Wenn der Wert von P1-P2 im Bereich von 4000 bis FFFF liegt, muss der Wert von P1-P2 ein BER-TLV-Tag mit zwei Bytes sein. Die Werte 4000 bis FFFF sind RFU.
Wenn ein primitives Datenobjekt bereitgestellt wird, muss das Datenfeld der Befehlsmeldung den Wert des entsprechenden primitiven Datenobjekts enthalten.
Wenn ein konstruiertes Datenobjekt bereitgestellt wird, muss das Datenfeld der Befehlsmeldung den Wert des konstruierten Datenobjekts enthalten (d. b. Datenobjekte einschließlich Tag, Länge und Wert).
Eine Liste aller von dieser Schnittstelle bereitgestellten Methoden finden Sie unter ISCardISO7816.
Zusätzlich zu den oben aufgeführten COM-Fehlercodes kann diese Schnittstelle einen Smartcardfehlercode zurückgeben, wenn eine Smartcardfunktion aufgerufen wurde, um die Anforderung abzuschließen. Weitere Informationen finden Sie unter Smartcard-Rückgabewerte.
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows [Nur XP-Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
Windows Nur Server [ 2003-Desktop-Apps] |
| Ende des Supports (Client) |
Windows XP |
| Ende des Supports (Server) |
Windows Server 2003 |
| Header |
|
| Typbibliothek |
|
| DLL |
|
| IID |
IID _ ISCardISO7816 ist als 53B6AA68-3F56-11D0-916B-00AA00C18068 definiert. |