Как отладить базовый мини-драйвер csp - PullRequest
1 голос
/ 15 декабря 2011

Я бы хотел подключить отладчик к базовому мини-драйверу csp в Windows 7.
В каком процессе размещается драйвер .dll? Это просто еще один WUDFHost.exe?
Могу ли я присоединить к этому процессу отладчик пользовательского режима?

Ответы [ 2 ]

1 голос
/ 30 января 2012

По крайней мере, при использовании certutil.exe .dll загружается «напрямую» в процесс.
В Visual Studio можно установить certutil.exe в качестве команды на панели отладки, а затем выполнить шагв код файла minidriver.dll и таким образом проверьте, как certutil пытается получить доступ к смарт-карте.

0 голосов
/ 17 января 2017

Я сделал простую глупую запись в журнал вместо отладки моего минидрайвера.

Тестирование вашего минидрайвера с помощью certutil очень просто:

certutil.exe -SCInfo

Идея отладки минидрайвера смещена.Для windows 10 есть 5 секундный тайм-аут для работы с картой.Если вы не опросите карту в течение 5 секунд, вы получите сброс карты с помощью операционной системы.

Вот как выглядит ошибка:

Карта в устройстве чтения смарт-карт 'Generic EMV Smartcard Reader 0 'был сброшен, потому что приложение удерживало исключительную транзакцию на карте в течение 5 секунд без активности.Если эта ошибка повторяется, приложение может работать неправильно.

Вот что Microsoft говорит об этом:

Транзакции со смарт-картой в WindowsServer 2012, Windows 8 и Windows RT: если транзакция удерживается на карте более 5 секунд, и на карте не выполняется никаких операций, карта сбрасывается.Это отличается от поведения в предыдущих выпусках.

Для исправной отладки вы должны ввести отдельный поток, который опрашивает состояние вашей карты с помощью SCardStatus или SCardGetAttrib, как Gemalto делает

Чтобы избежать сброса системой смарт-карты после 5-секундного тайм-аута, Gemalto рекомендует регулярно вызывать прозрачную функцию, такую ​​как SCardStatus или SCardGetAttrib, используя таймер, после вызова SCardBeginTransaction.Это изменение также относится к системам Windows 8, RT и Server 2012.

...