Partager via


SCardSetCardTypeProviderNameA, fonction (winscard.h)

La fonction SCardSetCardTypeProviderName spécifie le nom du module (bibliothèque de liens dynamiques) contenant le fournisseur pour un nom de carte donné et type de fournisseur.

Syntaxe

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

Paramètres

[in] hContext

Handle qui identifie le contexte Resource Manager. Le contexte resource manager peut être défini par un appel précédent à SCardEstablishContext. Cette valeur peut être NULL si l’appel à SCardSetCardTypeProviderName n’est pas dirigé vers un contexte spécifique.

[in] szCardName

Nom du type de carte auquel ce nom de fournisseur est associé.

[in] dwProviderId

Identificateur du fournisseur associé à ce type de carte.

Valeur Signification
SCARD_PROVIDER_PRIMARY
1
La fonction récupère le nom du fournisseur de services principalcarte à puce sous forme de chaîne GUID.
SCARD_PROVIDER_CSP
2
La fonction récupère le nom du fournisseur de services de chiffrement (CSP).
SCARD_PROVIDER_KSP
3
La fonction récupère le nom de la carte à puce fournisseur de stockage de clés (KSP).
SCARD_PROVIDER_CARD_MODULE
0x80000001
La fonction récupère le nom du module de carte.

[in] szProvider

Chaîne qui contient le nom du fournisseur qui représente le fournisseur csp.

Valeur de retour

Cette fonction retourne des valeurs différentes selon qu’elle réussit ou échoue.

Retourner le code Description
Success
SCARD_S_SUCCESS.
échec
Code d’erreur. Pour plus d’informations, consultez valeurs de retour de carte à puce.

Remarques

Cette fonction n’est pas redirigée, mais l’appel de la fonction à l’intérieur d’une session Bureau à distance n’entraîne pas d’erreur. Cela signifie uniquement que le résultat provient de l’ordinateur distant au lieu de l’ordinateur local.

Cette fonction définit le nom du fournisseur, tandis que SCardGetCardTypeProviderName pouvez être utilisé pour récupérer le nom du fournisseur.

Exemples

L’exemple suivant montre comment spécifier le nom du fournisseur de type de carte.

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);
}

Note

L’en-tête winscard.h définit SCardSetCardTypeProviderName comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows XP [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête winscard.h
bibliothèque Winscard.lib
DLL Winscard.dll

Voir aussi

SCardGetCardTypeProviderName