SCardGetReaderIconA, fonction (winscard.h)
La fonction SCardGetReaderIcon obtient une icône du lecteur de carte à puce pour le nom d’un lecteur donné. Cette fonction n’affecte pas l’état du lecteur de carte.
Syntaxe
LONG SCardGetReaderIconA(
[in] SCARDCONTEXT hContext,
[in] LPCSTR szReaderName,
[out] LPBYTE pbIcon,
[in, out] LPDWORD pcbIcon
);
Paramètres
[in] hContext
Handle qui identifie le contexte resource manager pour la requête. Vous pouvez définir le contexte du gestionnaire de ressources par un appel précédent à la fonction SCardEstablishContext. Ce paramètre ne peut pas être NULL.
[in] szReaderName
Nom du lecteur. Vous pouvez obtenir cette valeur en appelant la fonction SCardListReaders.
[out] pbIcon
Pointeur vers une mémoire tampon qui contient un OBJET BLOB de l’icône lecteur de carte à puce comme lu dans le fichier d’icônes. Si cette valeur est
[in, out] pcbIcon
Longueur, en caractères, de la mémoire tampon pbIcon. Ce paramètre reçoit la longueur réelle de l’attribut reçu. Si la longueur de la mémoire tampon est spécifiée comme SCARD_AUTOALLOCATE, pbIcon est convertie d’un pointeur vers un pointeur d’octet et reçoit l’adresse d’un bloc de mémoire qui contient l’attribut. Ce bloc de mémoire doit être libéré avec la fonction SCardFreeMemory.
Valeur de retour
Cette fonction retourne des valeurs différentes selon qu’elle réussit ou échoue.
Retourner le code | Description |
---|---|
|
SCARD_S_SUCCESS. |
|
Code d’erreur. Pour plus d’informations, consultez valeurs de retour de carte à puce. |
Remarques
L’icône doit être de 256 × 256 pixels sans canal alpha.
Exemples
PBYTE pbIcon = NULL;
DWORD cbIcon = SCARD_AUTOALLOCATE;
DWORD i;
LONG lReturn;
LPTSTR szReaderName = "USB Smart Card Reader 0";
// Retrieve the reader's icon.
// hContext was set by a previous call to SCardEstablishContext.
lReturn = SCardGetReaderIcon(hContext,
szReaderName,
(PBYTE)&pbIcon,
&cbIcon);
if ( SCARD_S_SUCCESS != lReturn )
{
printf("Failed SCardGetReaderIcon - %x\n", lReturn);
// Take appropriate action.
}
else
{
// Free the memory when done.
lReturn = SCardFreeMemory(hContext, pbIcon);
}
Note
L’en-tête winscard.h définit SCardGetReaderIcon 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 8 [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2012 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | winscard.h |