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


Метод ISCardCmd::get_P2

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

Метод get_P2 извлекает второй параметр (P2) байт из единицы данных протокола приложения (APDU).

Синтаксис

HRESULT get_P2(
  [out] BYTE *pbyP2
);

Параметры

pbyP2 [out]

Указатель на байт, который является P2 из APDU при возврате.

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

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

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

 

Комментарии

Чтобы задать для параметра P2 новое значение, вызовите put_P2.

Чтобы получить параметры P1 или P3, вызовите get_P1 и get_P3 соответственно.

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

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

Примеры

В следующем примере показано, как получить второй параметр (P2) байт из единицы данных протокола приложения (APDU). В примере предполагается, что pISCardCmd является допустимым указателем на экземпляр интерфейса ISCardCmd .

BYTE  byP2;
HRESULT  hr;

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

Требования

Требование Значение
Минимальная версия клиента
Windows XP [только классические приложения]
Минимальная версия сервера
Windows Server 2003 [только классические приложения]
Окончание поддержки клиентов
Windows XP
Прекращение поддержки сервера
Windows Server 2003
Заголовок
Scarddat.h
Библиотека типов
Scarddat.tlb
DLL
Scardssp.dll
IID
IID_ISCardCmd определяется как D5778AE3-43DE-11D0-9171-00AA00C18068

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

get_P1

get_P3

ISCardCmd

put_P2