Поделиться через


Метод ISCardISO7816::GetData

[Метод GetData доступен для использования в операционных системах, указанных в разделе Требования. Он недоступен для использования в Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версиях, Windows Vista, Windows Server 2008 и последующих версиях операционной системы. Модули смарт-карт предоставляют аналогичные функции.]

Метод GetData создает команду APDU , которая извлекает один примитивный объект данных или набор объектов данных (содержащихся в созданном объекте данных) в зависимости от типа выбранного файла.

Синтаксис

HRESULT GetData(
  [in]      BYTE       byP1,
  [in]      BYTE       byP2,
  [in]      LONG       lBytesToGet,
  [in, out] LPSCARDCMD *ppCmd
);

Параметры

byP1 [in]

Параметры.

Значение Значение
0000 – 003F
RFU
0040 – 00FF
Тег BER-TLV (1 байт) в P2
0100 – 01FF
Данные приложения (собственное кодирование)
0200 – 02FF
Тег SIMPLE-TLV в P2
0300 – 03FF
RFU
0400 - 04FF
Тег BER-TLV (2 байта) в P1–P2

 

byP2 [in]

Параметры.

Значение Значение
0000 – 003F
RFU
0040 – 00FF
Тег BER-TLV (1 байт) в P2
0100 – 01FF
Данные приложения (собственное кодирование)
0200 – 02FF
Тег SIMPLE-TLV в P2
0300 – 03FF
RFU
0400 - 04FF
Тег BER-TLV (2 байта) в P1–P2

 

lBytesToGet [in]

Число байтов, ожидаемое в ответе.

ppCmd [in, out]

На входных данных — указатель на объект интерфейса ISCardCmd или NULL.

При возврате он заполняется командой APDU, созданной этой операцией. Если параметру ppCmd присвоено значение NULL, то объект smart картаISCardCmd создается и возвращается с помощью указателя ppCmd.

Возвращаемое значение

Метод возвращает одно из следующих возможных значений.

Код возврата Описание
S_OK
Operation completed successfully (Операция выполнена успешно).
E_INVALIDARG
Недопустимый параметр.
E_POINTER
Был передан плохой указатель.
E_OUTOFMEMORY
Недостаточно памяти.

 

Комментарии

Инкапсулированная команда может выполняться только в том случае, если состояние безопасности смарт-карта соответствует атрибутам безопасности считываемого файла. Условия безопасности зависят от политики карта и могут управляться с помощью ExternalAuthenticate, InternalAuthenticate, ISCardAuth и т. д.

Чтобы выбрать файл, вызовите SelectFile.

Список всех методов, предоставляемых этим интерфейсом, см. в разделе ISCardISO7816.

В дополнение к приведенным выше кодам com-ошибок этот интерфейс может возвращать код ошибки смарт-карта, если для выполнения запроса была вызвана функция смарт-карта. Дополнительные сведения см. в разделе Возвращаемые значения смарт-карты.

Требования

Требование Значение
Минимальная версия клиента
Windows XP [только классические приложения]
Минимальная версия сервера
Windows Server 2003 [только классические приложения]
Окончание поддержки клиентов
Windows XP
Прекращение поддержки сервера
Windows Server 2003
Заголовок
Scardssp.h
Библиотека типов
Scardsrv.tlb
DLL
Scardssp.dll
IID
IID_ISCardISO7816 определяется как 53B6AA68-3F56-11D0-916B-00AA00C18068

См. также раздел

ExternalAuthenticate

InternalAuthenticate

ISCardAuth

ISCardISO7816

PutData

SelectFile