Funzione SCardEndTransaction (winscard.h)
La funzione SCardEndTransaction completa una transazione dichiarata in precedenza, consentendo ad altre applicazioni di riprendere le interazioni con la scheda.
Sintassi
LONG SCardEndTransaction(
[in] SCARDHANDLE hCard,
[in] DWORD dwDisposition
);
Parametri
[in] hCard
Valore di riferimento ottenuto da una chiamata precedente a SCardConnect. Questo valore sarebbe stato usato anche in una chiamata precedente a SCardBeginTransaction.
[in] dwDisposition
Azione da eseguire sulla scheda nel lettore connesso in chiusura.
Valore | Significato |
---|---|
|
Esettare la scheda. |
|
Non fare niente di speciale. |
|
Reimpostare la scheda. |
|
Spegnere la scheda. |
Valore restituito
Se la funzione ha esito positivo, la funzione restituisce SCARD_S_SUCCESS.
Se la funzione non viene completata, restituisce un codice di errore. Per altre informazioni, vedere Valori restituiti smart card. I codici di errore possibili seguono.
Codice/valore restituito | Descrizione |
---|---|
|
La transazione è stata rilasciata. Qualsiasi comunicazione futura con la scheda richiede una chiamata alla funzione SCardReconnect .
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: La transazione non è stata rilasciata. L'applicazione deve chiamare immediatamente la funzione SCardDisconnect, SCardReconnect o SCardReleaseContext per evitare che una transazione esistente blocchi altri thread e processi da comunicare con la smart card. |
Commenti
La funzione SCardEndTransaction è una funzione di accesso a smart card e lettore . Per altre informazioni su altre funzioni di accesso, vedere Funzioni di accesso smart card e lettore.
Esempio
L'esempio seguente termina una transazione smart card. L'esempio presuppone che lReturn sia una variabile valida di tipo LONG, che hCard è un handle valido ricevuto da una chiamata precedente alla funzione SCardConnect e che hCard sia stato passato a una chiamata precedente alla funzione SCardBeginTransaction .
lReturn = SCardEndTransaction(hCard,
SCARD_LEAVE_CARD);
if ( SCARD_S_SUCCESS != lReturn )
printf("Failed SCardEndTransaction\n");
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winscard.h |
Libreria | Winscard.lib |
DLL | Winscard.dll |