19.04.2006 13:33:16Capicom vs SmartCard Ответов: 0
Sergey
С#
Считыватель ACS ACR30U-SAM-SMC.
При попытке считывания сертификата со смарт карты через CAPICOM, посредством

cardStore.Open(CAPICOM_STORE_LOCATION.CAPICOM_SMART_CARD_USER_STORE, "", CAPICOM_STORE_OPEN_MODE.CAPICOM_STORE_OPEN_READ_ONLY);

возникает исключение FileNotFoundException
"The system cannot find the file specified."
В сети этот вопрос задается часто, но более-менее вразумительного ответа не нашел. Через Administrative Tools/CryptoPro CSP и CryptoApi все с картой работает.

Пробовал считать сертификат через CryptoApi и потом на его основе создать объект CAPICOM.CertificateClass. Объект создается, только связь с private key теряется.

Нашел в сети совет, что драйвер карты копирует сертификат с карты в память и к нему можно обращаться как к установленным пользовательским сертификатам через

userStore.Open(CAPICOM_STORE_LOCATION.CAPICOM_CURRENT_USER_STORE, "My" , CAPICOM_STORE_OPEN_MODE.CAPICOM_STORE_OPEN_READ_ONLY);
Попробовал - нужного мне сертификата (с карты) не нахожу.

Буду очень признателен за любые соображения о вышеописанных действиях. Как считать сертификат с карты для цифровой подписи через CAPICOM? Не хочется связываться с CryptoApi.
Откуда возникает FileNotFoundException?
- CAPICOM не может обратиться к драйверу считывателя?

Спасибо, Сергей