ISCardCmd::Encapsulate 메서드
[ Encapsulate 메서드는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. Windows Server 2003 SP1(서비스 팩 1) 이상, Windows Vista, Windows Server 2008 및 이후 버전의 운영 체제에서는 사용할 수 없습니다. 스마트 카드 모듈도 비슷한 기능을 제공합니다.]
Encapsulate 메서드는 지정된 APDU(명령 애플리케이션 프로토콜 데이터 단위)를 스마트 카드 전송하기 위해 다른 명령 APDU로 캡슐화합니다.
구문
HRESULT Encapsulate(
[in] LPBYTEBUFFER pApdu,
[in] ISO_APDU_TYPE ApduType
);
매개 변수
-
pApdu [in]
-
캡슐화할 APDU에 대한 포인터입니다.
-
ApduType [in]
-
T=0 전송에 대한 ISO 7816-4 사례.
-
ISO_CASE_1
-
ISO_CASE_2
-
ISO_CASE_3
-
ISO_CASE_4
-
반환 값
메서드는 다음 가능한 값 중 하나를 반환합니다.
반환 코드 | Description |
---|---|
|
작업이 완료되었습니다. |
|
잘못된 매개 변수입니다. |
|
잘못된 포인터가 pApdu에 전달되었습니다. |
|
메모리가 부족합니다. |
설명
APDU 명령을 빌드하려면 BuildCmd를 호출합니다.
이 인터페이스에서 제공하는 모든 메서드 목록은 ISCardCmd를 참조하세요.
위에 나열된 COM 오류 코드 외에도 스마트 카드 함수를 호출하여 요청을 완료한 경우 이 인터페이스는 스마트 카드 오류 코드를 반환할 수 있습니다. 자세한 내용은 스마트 카드 반환 값을 참조하세요.
예제
다음 예제에서는 APDU 명령을 캡슐화하는 방법을 보여 줍니다. 이 예제에서는 pIByteApdu가 IByteBuffer 인터페이스의 instance 대한 유효한 포인터라고 가정합니다.
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.
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 |
Windows Server 2003 [데스크톱 앱만 해당] |
클라이언트 지원 종료 |
Windows XP |
서버 지원 종료 |
Windows Server 2003 |
헤더 |
|
유형 라이브러리 |
|
DLL |
|
IID |
IID_ISCardCmd D5778AE3-43DE-11D0-9171-00AA00C18068로 정의됩니다. |
추가 정보