Freigeben über


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 den Satz von Datenobjekten in einem konstruierten Datenobjekt speichert.

Wie die Objekte gespeichert werden (einmal 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 es mit dem APDU-Befehl gefüllt, der von diesem Vorgang erstellt wurde. Wenn ppCmd auf NULL festgelegt wurde, wird ein Smart KarteISCardCmd-Objekt intern erstellt und mithilfe des ppCmd-Zeigers 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 fehlerhafter Zeiger wurde übergeben.
E_OUTOFMEMORY
Nicht genügend Arbeitsspeicher.

 

Bemerkungen

Der Befehl kann nur ausgeführt werden, wenn der Sicherheits status die von der Anwendung im Kontext für die Funktion definierten Sicherheitsbedingungen erfüllt.

Speichern von Anwendungsdaten

Wenn der Wert von P1-P2 im Bereich von 0100 bis 01FF liegt, muss der Wert von P1-P2 ein Identifikator sein, der für Karte internen Tests und für proprietäre Dienste reserviert ist, die innerhalb eines bestimmten Anwendungskontexts von Bedeutung sind.

Speichern von Datenobjekten

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 von 00FF ist für den Hinweis reserviert, dass das Datenfeld BER-TLV-Datenobjekte enthält.

Wenn der Wert von P1-P2 im Bereich 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 für zwei Bytes sein. Die Werte 4000 bis FFFF sind RFU.

Wenn ein primitives Datenobjekt bereitgestellt wird, muss das Datenfeld der Befehlsnachricht den Wert des entsprechenden primitiven Datenobjekts enthalten.

Wenn ein konstruiertes Datenobjekt bereitgestellt wird, muss das Datenfeld der Befehlsnachricht den Wert des erstellten Datenobjekts (d. a. Datenobjekte einschließlich tag, länge und wert) enthalten.

Eine Liste aller von dieser Schnittstelle bereitgestellten Methoden finden Sie unter ISCardISO7816.

Zusätzlich zu den oben aufgeführten COM-Fehlercodes gibt diese Schnittstelle möglicherweise einen Intelligenten Karte Fehlercode zurück, wenn eine Smart Karte-Funktion aufgerufen wurde, um die Anforderung abzuschließen. Weitere Informationen finden Sie unter Smartcard-Rückgabewerte.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2003 [nur 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 definiert als 53B6AA68-3F56-11D0-916B-00AA00C18068

Weitere Informationen

GetData

ISCardISO7816