Método ISCardCmd::Encapsulate

[El método Encapsulate está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. No está disponible para su uso en Windows Server 2003 con Service Pack 1 (SP1) y versiones posteriores, Windows Vista, Windows Server 2008 y versiones posteriores del sistema operativo. Los módulos de tarjeta inteligente proporcionan una funcionalidad similar.]

El método Encapsulate encapsula la unidad de datos del protocolo de aplicación de comandos (APDU) dada en otro comando APDU para la transmisión a una tarjeta inteligente.

Sintaxis

HRESULT Encapsulate(
  [in] LPBYTEBUFFER  pApdu,
  [in] ISO_APDU_TYPE ApduType
);

Parámetros

pApdu [ En]

Puntero a la APDU que se va a encapsular.

ApduType [ En]

Caso ISO 7816-4 para transmisiones T=0.

ISO _ CASE _ 1

ISO _ CASE _ 2

ISO _ CASE _ 3

ISO _ CASE _ 4

Valor devuelto

El método devuelve uno de los siguientes valores posibles.

Código devuelto Descripción
S _ OK
Operación completada correctamente.
E _ INVALIDARG
Parámetro no válido.
PUNTERO _ E
Se pasó un puntero no válido en pApdu.
E _ OUTOFMEMORY
Memoria insuficiente

Observaciones

Para compilar un comando APDU, llame a BuildCmd.

Para obtener una lista de todos los métodos proporcionados por esta interfaz, vea ISCardCmd.

Además de los códigos de error COM enumerados anteriormente, esta interfaz puede devolver un código de error de tarjeta inteligente si se llamó a una función de tarjeta inteligente para completar la solicitud. Para obtener más información, vea Valores devueltos de tarjeta inteligente.

Ejemplos

En el ejemplo siguiente se muestra cómo encapsular un comando APDU. En el ejemplo se supone que pIByteApdu es un puntero válido a una instancia de la interfaz IByteBuffer.

HRESULT    hr;

// pIByteApdu is a pointer to an instance of IByteBuffer.
// Encapsulate the APDU.
hr = pISCardCmd->Encapsulate(pIByteApdu, ISO_CASE_1);
if (FAILED(hr)) 
{
    printf("Failed Encapsulate.\n");
    // Take other error handling action as needed.
}

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Solo [ aplicaciones de escritorio XP]
Servidor mínimo compatible
Windows Solo aplicaciones de escritorio de Server 2003 []
Fin de compatibilidad de cliente
Windows XP
Fin de compatibilidad de servidor
Windows Server 2003
Encabezado
Scarddat.h
Biblioteca de tipos
Scarddat.tlb
Archivo DLL
Scardssp.dll
IID
IID ISCardCmd se define como _ D5778AE3-43DE-11D0-9171-00AA00C18068

Consulte también

BuildCmd

ISCardCmd