ISCardISO7816::WriteRecord-Methode
[Die WriteRecord-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 WriteRecord-Methode erstellt einen APDU-Befehl ( Application Protocol Data Unit ), der einen der folgenden Vorgänge initiiert:
- Der einmalige Schreibvorgang eines Datensatzes.
- Das logische OR der Datenbytes eines Datensatzes, der bereits im Karte vorhanden ist, mit den Datenbytes des Datensatzes, die im Befehl APDU angegeben sind.
- Das logische AND der Datenbytes eines Datensatzes, die bereits im Karte vorhanden sind, mit den Datenbytes des Datensatzes, die im Befehl APDU angegeben sind.
Wenn im Datencodierungsbyte kein Hinweis angegeben wird, gilt das logische OR-Verhalten.
Hinweis
Bei Verwendung der aktuellen Datensatzadressierung legt der Befehl den Datensatzzeiger auf den erfolgreich aktualisierten Datensatz fest.
Syntax
HRESULT WriteRecord(
[in] BYTE byRecordId,
[in] BYTE byRefCtrl,
[in] LPBYTEBUFFER pData,
[in, out] LPSCARDCMD *ppCmd
);
Parameter
-
byRecordId [in]
-
Datensatzidentifikation. Dies ist der P1-Wert:
P1 = "00" bezeichnet den aktuellen Datensatz.
P1 != '00' ist die Nummer des angegebenen Datensatzes.
-
byRefCtrl [in]
-
Codierung des Referenzsteuerelements P2.
Wert Bedeutung - Aktuelle EF
Bitposition: 00000---
Derzeit ausgewählter EF.- Kurze EF-ID
Bitposition: xxxxx---
Kurzer EF-Bezeichner.- Erster Datensatz
Bitposition: -----000 - Letzter Datensatz
Bitposition: -----001 - Nächster Datensatz
Bitposition: -----010 - Vorheriger Datensatz
Bitposition: -----011 - Datensatz #in P1
Bitposition: -----100 -
pData [in]
-
Zeiger auf den zu schreibenden Datensatz.
-
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 über den 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 fehlerhafter Zeiger wurde übergeben. |
|
Nicht genügend Arbeitsspeicher. |
Bemerkungen
Der gekapselte Befehl kann nur ausgeführt werden, wenn die sicherheitsrelevante status des intelligenten Karte die Sicherheitsattribute der zu verarbeitenden Elementardatei erfüllt.
Wenn der Befehl einen gültigen kurzen elementaren Bezeichner enthält, wird die Datei als aktuelle Elementardatei festgelegt. Wenn zum Zeitpunkt der Ausgabe dieses Befehls derzeit eine andere elementare Datei ausgewählt ist, kann dieser Befehl ohne Identifizierung der aktuell ausgewählten Datei verarbeitet werden.
Wenn der gekapselte Befehl für eine linear fixierte oder cyclisch strukturierte Elementardatei gilt, wird er abgebrochen, wenn sich die Datensatzlänge von der Länge des vorhandenen Datensatzes unterscheidet. Wenn sie für eine strukturierte Elementardatei mit linearer Variable gilt, kann sie ausgeführt werden, wenn sich die Datensatzlänge von der Länge des vorhandenen Datensatzes unterscheidet.
Wenn P2=xxxxx011 und die elementare Datei zyklische Datei ist, weist dieser Befehl das gleiche Verhalten auf, wie ein Befehl, der mit AppendRecord erstellt wurde.
Elementardateien ohne Datensatzstruktur können nicht in geschrieben werden. Der erstellte Befehl wird abgebrochen, wenn er auf eine elementare Datei ohne Datensatzstruktur angewendet wird.
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 |
|
Typbibliothek |
|
DLL |
|
IID |
IID_ISCardISO7816 ist definiert als 53B6AA68-3F56-11D0-916B-00AA00C18068 |
Weitere Informationen