Compartir a través de


Función SCardSetCardTypeProviderNameA (winscard.h)

La función SCardSetCardTypeProviderName especifica el nombre del módulo (biblioteca de vínculos dinámicos) que contiene el proveedor para un nombre de tarjeta determinado y tipo de proveedor.

Sintaxis

LONG SCardSetCardTypeProviderNameA(
  [in] SCARDCONTEXT hContext,
  [in] LPCSTR       szCardName,
  [in] DWORD        dwProviderId,
  [in] LPCSTR       szProvider
);

Parámetros

[in] hContext

Identificador que identifica el contexto del administrador de recursos de . El contexto del administrador de recursos se puede establecer mediante una llamada anterior a SCardEstablishContext. Este valor puede ser NULL si la llamada a SCardSetCardTypeProviderName no se dirige a un contexto de específico.

[in] szCardName

Nombre del tipo de tarjeta con el que está asociado este nombre de proveedor.

[in] dwProviderId

Identificador del proveedor asociado a este tipo de tarjeta.

Valor Significado
SCARD_PROVIDER_PRIMARY
1
La función recupera el nombre del proveedor de servicios principal de la tarjeta inteligente como una cadena GUID.
SCARD_PROVIDER_CSP
2
La función recupera el nombre del proveedor de servicios criptográficos (CSP).
SCARD_PROVIDER_KSP
3
La función recupera el nombre de la tarjeta inteligente proveedor de almacenamiento de claves (KSP).
SCARD_PROVIDER_CARD_MODULE
0x80000001
La función recupera el nombre del módulo de tarjeta.

[in] szProvider

Cadena que contiene el nombre del proveedor que representa el CSP.

Valor devuelto

Esta función devuelve valores diferentes en función de si se realiza correctamente o no.

Código devuelto Descripción
Success
SCARD_S_SUCCESS.
error de
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 cuando se encuentra dentro de una sesión de Escritorio remoto no producirá un error. Solo significa que el resultado será del equipo remoto en lugar del equipo local.

Esta función establece el nombre del proveedor, mientras que SCardGetCardTypeProviderName se puede usar para recuperar el nombre del proveedor.

Ejemplos

En el ejemplo siguiente se muestra cómo especificar el nombre del proveedor del tipo de tarjeta.

LPTSTR            szNewProvName = _T("My Provider Name");
LPTSTR            szCardName = _T("WindowsCard");
LONG              lReturn = SCARD_S_SUCCESS;

// Set the card type provider name.
// hContext was set by SCardEstablishContext.
lReturn = SCardSetCardTypeProviderName(hContext,
                                      szCardName,
                                      SCARD_PROVIDER_CSP,
                                      szNewProvName);
if ( SCARD_S_SUCCESS != lReturn )
{
    printf("Failed SCardSetCardTypeProviderName - %x\n", lReturn);
    exit(1);
}

Nota

El encabezado winscard.h define SCardSetCardTypeProviderName 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

SCardGetCardTypeProviderName