スマートカード USB リーダー ( ACR38 および ACR38 CCID ) があります。winscard.dll ((SCardEstablishContext、SCardConnect、SCardControl メソッド) と完全に接続し、apdu コマンドを送信するために機能する C# コードがいくつかあります。
これを Java で行う必要があり、次のようなコードで javax.smartcardio API を使用します: Java の PCSC サンプル
リーダーと挿入されたカードは正常に検出されますが、接続しようとすると遅延 (15 ~ 20 秒) があります。この遅延は、カードが最初に挿入されたときにのみ表示されます。同じカードを抜き差ししても遅延はありません。カードを取り出して別のカードを挿入すると、再び遅延します。Javaプログラムが実行されているかどうかに関係なく、最初の15〜20秒間接続できません。
リーダー/カードが接続されている場合、apdu コマンドを完全に送信できます。
それ以外の場合、C# と winscard.dll API では遅延はありません。
私はwin7、win8、ACR38リーダー、ACR38 CCIDリーダーでテストしています...
なぜ私はこの遅延を持っているのですか?