Site icon EfmSoft

Что означает код HRESULT 0x80100016 (SCARD_E_NOT_TRANSACTED)?

 
Предыдущий Следующий
SCARD_E_INVALID_ATR SCARD_E_READER_UNAVAILABLE

SCARD_E_NOT_TRANSACTED

Что означает SCARD_E_NOT_TRANSACTED

SCARD_E_NOT_TRANSACTED: Код пытается завершить smart-card transaction, которой уже нет или которая не была начата для текущего handle.

Что проверить

  • Сопоставьте каждый SCardBeginTransaction с ровно одним SCardEndTransaction.
  • Проверьте reset/reconnect: они могут сделать прежнее состояние транзакции недействительным.
  • При исключениях и нескольких cleanup paths исключите двойной SCardEndTransaction.

Что делать

Исправьте баланс begin/end и храните состояние транзакции вместе с generation card handle. Не подавляйте ошибку бесконечным EndTransaction: это признак сбоя lifecycle в приложении.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.

Exit mobile version