Metodo ISCardISO7816::P utData
[Il metodo PutData è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Non è disponibile per l'uso in Windows Server 2003 con Service Pack 1 (SP1) e versioni successive, Windows Vista, Windows Server 2008 e versioni successive del sistema operativo. I moduli smart card offrono funzionalità simili.
Il metodo PutData costruisce un comando APDU ( Application Protocol Data Unit ) che archivia un singolo oggetto dati primitivo o il set di oggetti dati contenuti in un oggetto dati costruito, a seconda del file selezionato.
La modalità di archiviazione degli oggetti (scrittura una volta e/o aggiornamento e/o aggiunta) dipende dalla definizione o dalla natura degli oggetti dati.
Sintassi
HRESULT PutData(
[in] BYTE byP1,
[in] BYTE byP2,
[in] LPBYTEBUFFER pData,
[in, out] LPSCARDCMD *ppCmd
);
Parametri
-
byP1 [in]
-
Codifica di P1-P2.
Valore Significato - 0000 - 003F
RFU - 0040 - 00FF
BER-TLV tag (1 byte) in P2 - 0100 - 01FF
Dati dell'applicazione (codifica proprietaria) - 0200 - 02FF
SIMPLE-TLV tag in P2 - 0300 - 03FF
RFU - 0400 - 04FF
Tag BER-TLV (2 byte) in P1-P2 -
byP2 [in]
-
Codifica di P1-P2.
Valore Significato - 0000 - 003F
RFU - 0040 - 00FF
BER-TLV tag (1 byte) in P2 - 0100 - 01FF
Dati dell'applicazione (codifica proprietaria) - 0200 - 02FF
SIMPLE-TLV tag in P2 - 0300 - 03FF
RFU - 0400 - 04FF
Tag BER-TLV (2 byte) in P1-P2 -
pData [in]
-
Puntatore a un buffer di byte contenente i parametri e i dati da scrivere.
-
ppCmd [in, out]
-
In input, un puntatore a un oggetto interfaccia ISCardCmd o NULL.
Al ritorno, viene riempito con il comando APDU costruito da questa operazione. Se ppCmd è stato impostato su NULL, viene creato e restituito internamente un oggetto ISCardCmd tramite il puntatore ppCmd.
Valore restituito
Il metodo restituisce uno dei valori possibili seguenti.
Codice restituito | Descrizione |
---|---|
|
Operazione completata correttamente. |
|
Parametro non valido. |
|
È stato passato un puntatore non valido. |
|
Memoria insufficiente. |
Commenti
Il comando può essere eseguito solo se lo stato di sicurezza soddisfa le condizioni di sicurezza definite dall'applicazione all'interno del contesto per la funzione.
-
Archiviare i dati dell'applicazione
-
Quando il valore di P1-P2 è compreso nell'intervallo compreso tra 0100 e 01FF, il valore di P1-P2 deve essere un identificatore riservato ai test interni della scheda e ai servizi proprietari significativi all'interno di un determinato contesto dell'applicazione.
-
Archiviare oggetti dati
-
Quando il valore P1-P2 è compreso nell'intervallo compreso tra 0040 e 00FF, il valore di P2 deve essere un tag BER-TLV su un singolo byte. Il valore 00FF è riservato per indicare che il campo dati contiene oggetti dati BER-TLV.
Quando il valore di P1-P2 si trova nell'intervallo da 0200 a 02FF, il valore di P2 deve essere un tag SIMPLE-TLV. Il valore 0200 è RFU. Il valore 02FF è riservato per indicare che il campo dati contiene oggetti dati SIMPLE-TLV.
Quando il valore di P1-P2 è compreso nell'intervallo compreso tra 4000 e FFFF, il valore di P1-P2 deve essere un tag BER-TLV su due byte. I valori da 4000 a FFFF sono RFU.
Quando viene fornito un oggetto dati primitivo, il campo dati del messaggio di comando conterrà il valore dell'oggetto dati primitivo corrispondente.
Quando viene fornito un oggetto dati costruito, il campo dati del messaggio di comando conterrà il valore dell'oggetto dati costruito, ovvero gli oggetti dati, inclusi il tag, la lunghezza e il valore.
Per un elenco di tutti i metodi forniti da questa interfaccia, vedere ISCardISO7816.
Oltre ai codici di errore COM elencati in precedenza, questa interfaccia può restituire un codice di errore della smart card se è stata chiamata una funzione smart card per completare la richiesta. Per altre informazioni, vedere Valori restituiti della smart card.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows XP [solo app desktop] |
Server minimo supportato |
Windows Server 2003 [solo app desktop] |
Fine del supporto client |
Windows XP |
Fine del supporto server |
Windows Server 2003 |
Intestazione |
|
Libreria dei tipi |
|
DLL |
|
IID |
IID_ISCardISO7816 è definito come 53B6AA68-3F56-11D0-916B-00AA00C18068 |
Vedi anche