Acceso a una tarjeta inteligente
El subsistema de tarjetas inteligentes proporciona varios medios para que una aplicación o proveedor de servicios se conecte a una tarjeta inteligente:
- Una aplicación puede llamar a SCardConnect para conectarse a una tarjeta que reside en un lector determinado. Esta es la manera más sencilla de establecer la comunicación con una tarjeta inteligente.
- Una aplicación puede buscar una tarjeta inteligente específica dentro de un grupo de lectores determinado. La aplicación identifica la tarjeta por su nombre para mostrar y especifica una lista de lectores en los que puede aparecer la tarjeta. El administrador de recursos busca en la lista de lectores las tarjetas con una cadena ATR que coincida con la tarjeta con nombre y devuelve información de estado a la aplicación. El subsistema de tarjetas inteligentes nunca coloca una GUI o interactúa con la tarjeta más allá de obtener la cadena ATR. Sin embargo, proporciona información suficiente para la aplicación o un control común para poder guiar al usuario a través de la localización de la tarjeta o el tipo de tarjeta deseados. Esto da como resultado la asignación de la solicitud a un lector específico, al que se dirige más E/S.
- Una aplicación puede solicitar una lista de tarjetas que admiten un conjunto determinado de interfaces de tarjeta inteligente. A continuación, la aplicación puede usar la lista en el caso anterior. Esto permite a las aplicaciones conectarse a tarjetas en función de sus capacidades, sin tener en cuenta sus nombres.
Cuando una aplicación busca una tarjeta, proporciona una matriz de nombres de lector en los que se va a buscar. Para cada elemento de lector de la matriz, el administrador de recursos proporciona la siguiente información:
- Si el lector está disponible para su uso por esta aplicación.
- Si hay una tarjeta insertada en este lector y, si es así, cuál es su cadena ATR.
- Si la cadena ATR de la tarjeta coincide con cualquiera de las cadenas ATR de las tarjetas solicitadas.
La aplicación usa la información devuelta para aplicar más filtros a las tarjetas o para pedir al usuario que seleccione la tarjeta deseada. Tenga en cuenta que una o varias de las listas de lectores devueltas pueden abrirse para su uso exclusivo por parte de otras aplicaciones, por lo que no se garantiza el acceso a esta lista de lectores.