Share via


ISCardISO7816::WriteRecord 메서드

[ WriteRecord 메서드는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. Windows Server 2003 SP1(서비스 팩 1) 이상, Windows Vista, Windows Server 2008 및 이후 버전의 운영 체제에서는 사용할 수 없습니다. 스마트 카드 모듈도 비슷한 기능을 제공합니다.]

WriteRecord 메서드는 다음 작업 중 하나를 시작하는 APDU(애플리케이션 프로토콜 데이터 단위) 명령을 생성합니다.

  • 레코드의 쓰기 한 번입니다.
  • APDU 명령에 지정된 레코드의 데이터 바이트를 사용하여 카드 이미 있는 레코드의 데이터 바이트 논리적 OR입니다.
  • APDU 명령에 지정된 레코드의 데이터 바이트를 사용하여 카드 이미 있는 레코드의 데이터 바이트의 논리적 AND입니다.

데이터 코딩 바이트에 표시가 제공되지 않으면 논리적 OR 동작이 적용됩니다.

참고

현재 레코드 주소 지정을 사용하는 경우 명령은 성공적으로 업데이트된 레코드에 대한 레코드 포인터를 설정합니다.

 

구문

HRESULT WriteRecord(
  [in]      BYTE         byRecordId,
  [in]      BYTE         byRefCtrl,
  [in]      LPBYTEBUFFER pData,
  [in, out] LPSCARDCMD   *ppCmd
);

매개 변수

byRecordId [in]

레코드 식별. P1 값은 다음과 같습니다.

P1 = '00'은 현재 레코드를 지정합니다.

P1 != '00'은 지정된 레코드의 수입니다.

byRefCtrl [in]

참조 컨트롤 P2의 코딩입니다.

의미
현재 EF
비트 위치: 00000---
현재 선택된 EF입니다.
짧은 EF ID
비트 위치: xxxxx---
짧은 EF 식별자입니다.
첫 번째 레코드
비트 위치: -----000
마지막 레코드
비트 위치: -----001
다음 레코드
비트 위치: -----010
이전 레코드
비트 위치: -----011
P1의 레코드 #
비트 위치: -----100

 

pData [in]

쓸 레코드에 대한 포인터입니다.

ppCmd [in, out]

입력에서 ISCardCmd 인터페이스 개체 또는 NULL에 대한 포인터입니다.

반환 시 이 작업에 의해 생성된 APDU 명령으로 채워집니다. ppCmdNULL로 설정된 경우 스마트 카드ISCardCmd 개체가 내부적으로 만들어지고 ppCmd 포인터를 통해 반환됩니다.

반환 값

메서드는 다음 가능한 값 중 하나를 반환합니다.

반환 코드 Description
S_OK
작업이 완료되었습니다.
E_INVALIDARG
잘못된 매개 변수입니다.
E_POINTER
잘못된 포인터가 전달되었습니다.
E_OUTOFMEMORY
메모리가 부족합니다.

 

설명

캡슐화된 명령은 스마트 카드 보안 상태 처리 중인 기본 파일의 보안 특성을 충족하는 경우에만 수행할 수 있습니다.

명령에 유효한 짧은 기본 식별자가 포함되어 있으면 파일을 현재 기본 파일로 설정합니다. 이 명령을 실행할 때 다른 기본 파일이 현재 선택된 경우 현재 선택한 파일을 식별하지 않고 이 명령을 처리할 수 있습니다.

캡슐화된 명령이 선형 고정 또는 순환 구조 기본 파일에 적용되는 경우 레코드 길이가 기존 레코드의 길이와 다른 경우 중단됩니다. 선형 변수 구조화된 기본 파일에 적용되는 경우 레코드 길이가 기존 레코드의 길이와 다를 때 수행될 수 있습니다.

P2=xxxxx011이고 기본 파일이 순환 파일인 경우 이 명령은 AppendRecord를 사용하여 생성된 명령과 동일한 동작을 하게 됩니다.

레코드 구조가 없는 기본 파일은 쓸 수 없습니다. 생성된 명령은 레코드 구조가 없는 기본 파일에 적용되는 경우 중단됩니다.

이 인터페이스에서 제공하는 모든 메서드 목록은 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로 정의됩니다.

추가 정보

AppendRecord

ISCardISO7816

ReadRecord

UpdateRecord