ISCardISO7816::SelectFile 메서드
[ SelectFile 메서드는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. Windows Server 2003 SP1(서비스 팩 1) 이상, Windows Vista, Windows Server 2008 및 이후 버전의 운영 체제에서는 사용할 수 없습니다. 스마트 카드 모듈도 비슷한 기능을 제공합니다.]
SelectFile 메서드는 논리 채널 내에서 현재 기본 파일을 설정하는 APDU(애플리케이션 프로토콜 데이터 단위) 명령을 생성합니다. 후속 명령은 논리 채널을 통해 현재 파일을 암시적으로 참조할 수 있습니다.
파일 저장소의 루트(MF)일 수 있는 카드 파일 저장소 내에서 DF(디렉터리)를 선택하면 현재 DF가 됩니다. 이러한 선택 후에는 해당 논리 채널을 통해 암시적 현재 기본 파일을 참조할 수 있습니다.
기본 파일을 선택하면 선택한 파일과 해당 부모가 현재 파일로 설정됩니다.
초기화에 대한 답변 후 기록 바이트 또는 초기 데이터 문자열에서 다르게 지정하지 않는 한 MF는 기본 논리 채널을 통해 암시적으로 선택됩니다.
구문
HRESULT SelectFile(
[in] BYTE byP1,
[in] BYTE byP2,
[in] LPBYTEBUFFER pData,
[in] LONG lBytesToRead,
[in, out] LPSCARDCMD *ppCmd
);
매개 변수
-
byP1 [in]
-
선택 컨트롤.
P1(단어의 상위 바이트): 8 7 6 5 4 3 2 1 의미 - 000000xx
파일 ID 선택 - 00000000
EF, DF 또는 MF - 00000001
자식 DF - 00000010
DF 아래의 EF - 00000011
현재 DF의 부모 DF P1=00이면 파일 ID의 특정 코딩으로 인해 또는 선택할 파일이 MF, DF 또는 EF인 경우 명령 실행 컨텍스트 때문에 카드 알 수 있습니다.
P1-P2=0000이면 파일 ID가 제공되면 다음 환경에서 고유해야 합니다.
- 현재 DF의 직위 자식
- 부모 DF
- 부모 DF의 직할 자식
P1-P2=0000이고 데이터 필드가 비어 있거나 3F00과 같은 경우 MF를 선택합니다.
P1=04인 경우 데이터 필드는 DF 이름이며, 아마도 오른쪽으로 잘렸을 수 있습니다.
지원되는 경우 동일한 데이터 필드가 있는 연속적인 명령은 이름이 데이터 필드와 일치하는 DF(즉, 명령 데이터 필드로 시작)를 선택해야 합니다. 카드 빈 데이터 필드가 있는 명령을 수락하는 경우 DF의 전체 또는 하위 집합을 연속적으로 선택할 수 있습니다.
-
byP2 [in]
-
선택 컨트롤.
-
pData [in]
-
필요한 경우 작업을 위한 데이터입니다. else, NULL입니다. 이 매개 변수에 전달되는 데이터 형식은 다음과 같습니다.
- 파일 ID
- MF의 경로
- 현재 DF의 경로
- DF 이름
-
lBytesToRead [in]
-
비어 있거나(즉, 0) 응답에 필요한 데이터의 최대 길이입니다.
-
ppCmd [in, out]
-
입력에서 ISCardCmd 인터페이스 개체 또는 NULL에 대한 포인터입니다.
반환 시 이 작업에 의해 생성된 APDU 명령으로 채워집니다. ppCmd가 NULL로 설정된 경우 스마트 카드ISCardCmd 개체가 내부적으로 만들어지고 ppCmd 포인터를 통해 반환됩니다.
반환 값
메서드는 다음 가능한 값 중 하나를 반환합니다.
반환 코드 | Description |
---|---|
|
작업이 완료되었습니다. |
|
잘못된 매개 변수입니다. |
|
잘못된 포인터가 전달되었습니다. |
|
메모리가 부족합니다. |
설명
달리 지정하지 않는 한 캡슐화된 명령의 올바른 실행은 다음 규칙에 따라 보안 상태 수정합니다.
- 현재 기본 파일이 변경되거나 현재 기본 파일이 없는 경우 이전의 현재 기본 파일과 관련된 보안 상태 손실됩니다.
- 현재 DF(파일 저장소 디렉터리)가 이전의 현재 DF와 하위이거나 동일한 경우 이전의 현재 DF와 관련된 보안 상태 손실됩니다. 이전 및 새 현재 DF의 모든 공통 상위 항목에 공통적인 보안 상태 유지 관리됩니다.
이 인터페이스에서 제공하는 모든 메서드 목록은 ISCardISO7816을 참조하세요.
위에 나열된 COM 오류 코드 외에도 스마트 카드 함수를 호출하여 요청을 완료한 경우 이 인터페이스는 스마트 카드 오류 코드를 반환할 수 있습니다. 자세한 내용은 스마트 카드 반환 값을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 |
Windows Server 2003 [데스크톱 앱만 해당] |
클라이언트 지원 종료 |
Windows XP |
서버 지원 종료 |
Windows Server 2003 |
헤더 |
|
유형 라이브러리 |
|
DLL |
|
IID |
IID_ISCardISO7816 53B6AA68-3F56-11D0-916B-00AA00C18068로 정의됩니다. |
추가 정보