Функция SCardEndTransaction (winscard.h)
Функция SCardEndTransaction завершает ранее объявленную транзакцию, позволяя другим приложениям возобновить взаимодействие с карта.
Синтаксис
LONG SCardEndTransaction(
[in] SCARDHANDLE hCard,
[in] DWORD dwDisposition
);
Параметры
[in] hCard
Значение ссылки, полученное при предыдущем вызове SCardConnect. Это значение также использовалось бы в более раннем вызове SCardBeginTransaction.
[in] dwDisposition
Действие для выполнения карта в подключенном средстве чтения при закрытии.
Значение | Значение |
---|---|
|
Извлеките карта. |
|
Не делайте ничего особенного. |
|
Сбросьте карта. |
|
Выключите карта. |
Возвращаемое значение
Если функция выполнена успешно, функция возвращает SCARD_S_SUCCESS.
Если функция завершается сбоем, она возвращает код ошибки. Дополнительные сведения см. в разделе Возвращаемые значения смарт-карты. Ниже приведены возможные коды ошибок.
Возвращаемый код или значение | Описание |
---|---|
|
Транзакция была освобождена. Любой будущий обмен данными с карта требует вызова функции SCardReconnect.
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Транзакция не была освобождена. Приложение должно немедленно вызвать функцию SCardDisconnect, SCardReconnect или SCardReleaseContext, чтобы избежать существующей транзакции, блокирующей взаимодействие других потоков и процессов с смарт-карта. |
Комментарии
Функция SCardEndTransaction — это интеллектуальная функция доступа карта и чтения. Дополнительные сведения о других функциях доступа см. в разделе Функции доступа к смарт-картам и читателю.
Примеры
В следующем примере завершается транзакция смарт-карта. В примере предполагается, что lReturn является допустимой переменной типа LONG, что hCard является допустимым дескриптором, полученным от предыдущего вызова функции SCardConnect , и что hCard был передан в предыдущий вызов функции SCardBeginTransaction .
lReturn = SCardEndTransaction(hCard,
SCARD_LEAVE_CARD);
if ( SCARD_S_SUCCESS != lReturn )
printf("Failed SCardEndTransaction\n");
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | winscard.h |
Библиотека | Winscard.lib |
DLL | Winscard.dll |