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
S _ OK
Operation erfolgreich abgeschlossen.
E _ INVALIDARG
Ungültiger Parameter.
E _ POINTER
Ein ungültiger Zeiger wurde übergeben.
E _ OUTOFMEMORY
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
Scardssp.h
Typbibliothek
Scardsrv.tlb
DLL
Scardssp.dll
IID
IID _ ISCardISO7816 ist als 53B6AA68-3F56-11D0-916B-00AA00C18068 definiert.

Weitere Informationen

GetData

ISCardISO7816