Partager via


ISCardCmd::get_P3, méthode

[La méthode get_P3 peut être utilisée dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il n’est pas disponible pour une utilisation dans Windows Server 2003 avec Service Pack 1 (SP1) et versions ultérieures, Windows Vista, Windows Server 2008 et les versions ultérieures du système d’exploitation. Les modules de carte à puce offrent des fonctionnalités similaires.]

La méthode get_P3 récupère le troisième paramètre (P3) octet à partir de l’unité de données du protocole d’application (APDU). Cette valeur d’octet en lecture seule représente la taille de la partie données de l’API.

Syntaxe

HRESULT get_P3(
  [out] BYTE *pbyP3
);

Paramètres

pbyP3 [out]

Pointeur vers l’octet qui est le P3 de l’APDU au retour.

Valeur retournée

La méthode retourne l’une des valeurs possibles suivantes.

Code de retour Description
S_OK
Opération exécutée avec succès.
E_INVALIDARG
PbyP3 n’est pas valide.
E_POINTER
Un pointeur incorrect a été passé dans pbyP3.
E_OUTOFMEMORY
Mémoire insuffisante.

 

Notes

Le paramètre P3 est en lecture seule et ne peut donc pas être défini.

Pour obtenir les paramètres P1 ou P2, appelez get_P1 et get_P2 respectivement.

Pour obtenir la liste de toutes les méthodes fournies par cette interface, consultez ISCardCmd.

En plus des codes d’erreur COM répertoriés ci-dessus, cette interface peut retourner un code d’erreur de carte intelligent si une fonction de carte intelligente a été appelée pour terminer la demande. Pour plus d’informations, consultez Valeurs de retour de carte à puce.

Exemples

L’exemple suivant montre comment récupérer le troisième paramètre (P3) octet à partir de l’unité de données du protocole d’application (APDU). L’exemple suppose que pISCardCmd est un pointeur valide vers un instance de l’interface ISCardCmd.

BYTE  byP3;
HRESULT  hr;

// Retrieve the P3 byte.
hr = pISCardCmd->get_P3(&byP3);
if (FAILED(hr))
{
  printf("Failed get_P3\n");
  // Take other error handling action as needed.
}

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2003 [applications de bureau uniquement]
Fin de la prise en charge des clients
Windows XP
Fin de la prise en charge des serveurs
Windows Server 2003
En-tête
Scarddat.h
Bibliothèque de types
Scarddat.tlb
DLL
Scardssp.dll
IID
IID_ISCardCmd est défini comme D5778AE3-43DE-11D0-9171-00AA00C18068

Voir aussi

get_P1

get_P2

ISCardCmd