| Предыдущий | Следующий |
| SCARD_W_CARD_NOT_AUTHENTICATED | SCARD_W_CACHE_ITEM_STALE |
SCARD_W_CACHE_ITEM_NOT_FOUND
Это промах кэша, а не доказательство отсутствия данных на карте
SCARD_W_CACHE_ITEM_NOT_FOUND возвращается путём кэша смарт-карт Windows, когда запрошенная пара «имя — значение» отсутствует в глобальном кэше, поддерживаемом диспетчером ресурсов смарт-карт. Сам по себе статус не означает, что на карте нет сертификата, файла или ключа. Кэш является уровнем оптимизации и отделён от чтения актуальных данных с карты или через её минидрайвер.
Windows связывает кэшированные данные с идентификатором карты, именем поиска и сведениями о свежести. Поэтому промах кэша возможен при первом использовании, после очистки кэша, для другого идентификатора карты, другого имени поиска или если поставщик никогда не записывал элемент.
Правильная обработка
- Если это безопасно, прочитайте или вычислите достоверное значение из карты либо поставщика.
- Записывайте элемент кэша только после проверки, что он относится к текущему идентификатору карты и ревизии свежести.
- Не сообщайте промах кэша как извлечение карты, потерю сертификата или ошибку PIN-кода.
Ссылки
- Microsoft: SCardReadCache
- Microsoft: архитектура смарт-карт
- Microsoft: SCardWriteCache
- PCSC-lite: коды ошибок
Нужно найти другой код? Найти другой код состояния или ошибки.
