Método ISCardISO7816::P utData
[O método PutData está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele não está disponível para uso no Windows Server 2003 com Service Pack 1 (SP1) e posterior, Windows Vista, Windows Server 2008 e versões subsequentes do sistema operacional. Os Módulos de Cartão Inteligente fornecem funcionalidade semelhante.]
O método PutData constrói um comando APDU ( unidade de dados de protocolo de aplicativo ) que armazena um único objeto de dados primitivo ou o conjunto de objetos de dados contidos em um objeto de dados construído, dependendo do arquivo selecionado.
A forma como os objetos são armazenados (gravando uma vez e/ou atualizando e/ou acrescentando) depende da definição ou da natureza dos objetos de dados.
Sintaxe
HRESULT PutData(
[in] BYTE byP1,
[in] BYTE byP2,
[in] LPBYTEBUFFER pData,
[in, out] LPSCARDCMD *ppCmd
);
Parâmetros
-
byP1 [in]
-
Codificação de P1-P2.
Valor Significado - 0000 - 003F
RFU - 0040 - 00FF
Marca BER-TLV (1 byte) em P2 - 0100 - 01FF
Dados do aplicativo (codificação proprietária) - 0200 - 02FF
Marca SIMPLE-TLV em P2 - 0300 - 03FF
RFU - 0400 - 04FF
Marca BER-TLV (2 bytes) em P1-P2 -
byP2 [in]
-
Codificação de P1-P2.
Valor Significado - 0000 - 003F
RFU - 0040 - 00FF
Marca BER-TLV (1 byte) em P2 - 0100 - 01FF
Dados do aplicativo (codificação proprietária) - 0200 - 02FF
Marca SIMPLE-TLV em P2 - 0300 - 03FF
RFU - 0400 - 04FF
Marca BER-TLV (2 bytes) em P1-P2 -
pData [in]
-
Ponteiro para um buffer de bytes que contém os parâmetros e os dados a serem gravados.
-
ppCmd [in, out]
-
Na entrada, um ponteiro para um objeto de interface ISCardCmd ou NULL.
No retorno, ele é preenchido com o comando APDU construído por essa operação. Se ppCmd tiver sido definido como NULL, um objeto cartãoISCardCmd inteligente será criado internamente e retornado usando o ponteiro ppCmd.
Valor retornado
O método retorna um dos valores possíveis a seguir.
Código de retorno | Descrição |
---|---|
|
Operação concluída com sucesso. |
|
Parâmetro inválido. |
|
Um ponteiro inválido foi passado. |
|
Sem memória. |
Comentários
O comando só poderá ser executado se o status de segurança atender às condições de segurança definidas pelo aplicativo dentro do contexto da função.
-
Armazenar dados do aplicativo
-
Quando o valor de P1-P2 estiver no intervalo de 0100 a 01FF, o valor de P1-P2 será um identificador reservado para cartão testes internos e para serviços proprietários significativos em um determinado contexto de aplicativo.
-
Armazenar objetos de dados
-
Quando o valor P1-P2 estiver no intervalo de 0040 a 00FF, o valor de P2 será uma marca BER-TLV em um único byte. O valor de 00FF é reservado para indicar que o campo de dados carrega objetos de dados BER-TLV.
Quando o valor de P1-P2 estiver no intervalo de 0200 a 02FF, o valor de P2 será uma marca SIMPLE-TLV. O valor 0200 é RFU. O valor 02FF é reservado para indicar que o campo de dados carrega objetos de dados SIMPLE-TLV.
Quando o valor de P1-P2 estiver no intervalo de 4000 a FFFF, o valor de P1-P2 será uma marca BER-TLV em dois bytes. Os valores 4000 a FFFF são RFU.
Quando um objeto de dados primitivo é fornecido, o campo de dados da mensagem de comando deve conter o valor do objeto de dados primitivo correspondente.
Quando um objeto de dados construído é fornecido, o campo de dados da mensagem de comando deve conter o valor do objeto de dados construído (ou seja, objetos de dados, incluindo sua marca, comprimento e valor).
Para obter uma lista de todos os métodos fornecidos por essa interface, consulte ISCardISO7816.
Além dos códigos de erro COM listados acima, essa interface poderá retornar um código de erro de cartão inteligente se uma função de cartão inteligente for chamada para concluir a solicitação. Para obter mais informações, consulte Valores retornados do cartão inteligente.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2003 [somente aplicativos da área de trabalho] |
Fim do suporte ao cliente |
Windows XP |
Fim do suporte ao servidor |
Windows Server 2003 |
Cabeçalho |
|
Biblioteca de tipos |
|
DLL |
|
IID |
IID_ISCardISO7816 é definido como 53B6AA68-3F56-11D0-916B-00AA00C18068 |
Confira também