0

私はスマートカードアプリケーションを書いています。このアプリケーションは、カードをリーダーに接続し、時々それで動作します。リーダーが使用できなくなったときに監視する必要があります (カードが取り出されるか、リーダーが USB から取り外されます)。

リーダーはSCardStatusChangeを使用して監視されます。この機能には、監視するリーダー名が必要です。

カード付きの 2 つのリーダーを USB スロットに挿入します。「USB Smart Card Reader 0」「USB Smart Card Reader 1」として認識されます。リーダーを 1 つ削除します。Windows は、「USB スマート カード リーダー 1」がまだ接続されていると表示します。私はそれを挿入します - 両方とも利用可能です。今、私は2番目のものを削除します。Windows はまだ「USB スマート カード リーダー 1」が接続されていると表示します。そして、まだ接続されている「USB Smart Card Reader 0」であるため、これが問題です。名前が変更されたため、追跡ルーチンはリーダーを監視できません。

ドライバーの問題ですか、それとも XP スマートカード サブシステムの問題ですか? 使用されるドライバーは、USB CCID Compliant バージョン 5.2.3790.1830 (VID 076B、PID A021)、usbccid.sys です。

4

1 に答える 1

2

プロジェクトでこの問題に遭遇し、使用可能な各リーダーを繰り返し処理し、カードがそのリーダーに挿入されているかどうかを確認することで対処しました。この命名の問題は、いくつかのブランドの USB リーダーで発生します。

私の会社には、スマート カードを Web サイトに統合できる製品があります。デモの 1 つに、現在利用可能なスマート カード リーダーがリストされており、さまざまなリーダー シナリオのテストに役立つ場合があります: https://cardboss.cometway.com/content.agent?page_name=GetReaders+Demo

于 2010-07-26T21:30:48.973 に答える