Función SCardListInterfacesA (winscard.h)
La función SCardListInterfaces proporciona una lista de interfaces proporcionadas por una tarjeta determinada.
El autor de la llamada proporciona el nombre de una tarjeta inteligente introdujo anteriormente en el subsistema y recibe la lista de interfaces admitidas por la tarjeta.
Sintaxis
LONG SCardListInterfacesA(
[in] SCARDCONTEXT hContext,
[in] LPCSTR szCard,
[out] LPGUID pguidInterfaces,
[in, out] LPDWORD pcguidInterfaces
);
Parámetros
[in] hContext
Identificador que identifica el de contexto del administrador de recursos de
[in] szCard
Nombre de la tarjeta inteligente que ya se introdujo en el subsistema de tarjeta inteligente .
[out] pguidInterfaces
Matriz de identificadores de interfaz (GUID) que indican las interfaces compatibles con la tarjeta inteligente. Si este valor es null, SCardListInterfaces omite la longitud de la matriz proporcionada en pcguidInterfaces, devolviendo el tamaño de la matriz que se habría devuelto si este parámetro no se hubiera null para pcguidInterfaces y un código correcto.
[in, out] pcguidInterfaces
Tamaño de la matriz pcguidInterfaces y recibe el tamaño real de la matriz devuelta. Si el tamaño de la matriz se especifica como SCARD_AUTOALLOCATE, pcguidInterfaces se convierte en un puntero a un puntero GUID y recibe la dirección de un bloque de memoria que contiene la matriz. Este bloque de memoria debe desasignarse con SCardFreeMemory.
Valor devuelto
Esta función devuelve valores diferentes en función de si se realiza correctamente o no.
Código devuelto | Descripción |
---|---|
|
SCARD_S_SUCCESS. |
|
Un código de error. Para obtener más información, consulte valores devueltos de tarjeta inteligente. |
Observaciones
Esta función no se redirige, pero llamar a la función al intentar una sesión de Escritorio remoto no producirá un error. Solo significa que el resultado será del equipo remoto en lugar del equipo local.
La función
Ejemplos
En el ejemplo siguiente se muestran las interfaces de una tarjeta inteligente.
LPGUID pGuids = NULL;
LONG lReturn;
DWORD cGuid = SCARD_AUTOALLOCATE;
// Retrieve the list of interfaces.
lReturn = SCardListInterfaces(NULL,
(LPCSTR) "MyCard",
(LPGUID)&pGuids,
&cGuid );
if ( SCARD_S_SUCCESS != lReturn )
{
printf("Failed SCardListInterfaces\n");
exit(1); // Or other appropriate action
}
if ( 0 != cGuid )
{
// Do something with the array of Guids.
// Remember to free pGuids when done (by SCardFreeMemory).
// ...
}
Nota
El encabezado winscard.h define SCardListInterfaces como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows XP [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows Server 2003 [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
winscard.h |
biblioteca de |
Winscard.lib |
DLL de |
Winscard.dll |
Consulte también