Я спрашиваю об этом, потому что я в отчаянии, и я не мог найти ни одного сообщения, говорящего об этой проблеме в любом месте.Сертификаты хранить окна 10 C#
В моем приложении WinForms C# Я использую следующий код для извлечения Windows, Сертификаты:
X509Certificate2Collection Certificates = new X509Certificate2Collection();
X509Store store = new X509Store(StoreName.My);
store.Open(OpenFlags.ReadOnly);
//Filtering the list, showing only not-expired ones
Certificates = store.Certificates.Find(X509FindType.FindByTimeValid, DateTime.Now, false);
store.Close();
Это работает как шарм на всех версиях Windows, от Windows XP к Windows, 8.1. В Windows 10 он работает с первой попытки. Если я сделаю это снова, он застрянет в ожидании.
Я попытался реализовать «тайм-таймер» 60 секунд: предоставленный фрагмент кода просто отключается.
Если пользователь удаляет свой USB-ключ (или смарт-карту), содержащий сертификат с ПК, и снова вставляет его, проблема решена.
У кого-нибудь есть решение для такого поведения? Я в отчаянии, мои клиенты, обновляющиеся до окон 10, сошли с ума, и я не знаю, что делать.
Является ли ваша смарт-карта совместимой с Windows 10? – Crypt32
Конечно, иначе это не сработает в первый раз! В первый раз, когда я использую этот код, я получаю сертификаты, выбираю один, и я использую его для цифровой подписи файла или для аутентификации владельца. Нет проблем. Но во второй раз, когда я запускаю этот код, я просто застрял в ожидании навсегда. ТОЛЬКО на Win10. – Fabio
Это происходит с помощью другой смарт-карты? Какую смарт-карту вы используете? Это может быть ошибка в промежуточном программном обеспечении смарт-карт. – pepo