SCardIntroduceReaderA 함수(winscard.h)

SCardIntroduceReader 함수는 기존 스마트 카드reader에 대한 새 이름을 도입합니다.

참고 스마트 카드 판독기는 시스템에 자동으로 도입됩니다. 스마트 카드 판독기 공급업체의 설치 프로그램은 스마트 카드 판독기를 시스템에 도입할 수도 있습니다.
 

구문

LONG SCardIntroduceReaderA(
  [in] SCARDCONTEXT hContext,
  [in] LPCSTR       szReaderName,
  [in] LPCSTR       szDeviceName
);

매개 변수

[in] hContext

리소스 관리자 컨텍스트를 식별하는 핸들입니다. 리소스 관리자 컨텍스트는 SCardEstablishContext에 대한 이전 호출에 의해 설정됩니다. 이 매개 변수는 NULL일 수 없습니다.

[in] szReaderName

판독기에서 할당할 표시 이름입니다.

[in] szDeviceName

스마트 카드 판독기의 시스템 이름(예: "MyReader 01").

반환 값

이 함수는 성공 또는 실패 여부에 따라 다른 값을 반환합니다.

반환 코드 설명
Success
SCARD_S_SUCCESS.
실패
오류 코드입니다. 자세한 내용은 스마트 카드 반환 값을 참조하세요.

설명

시스템에 설치된 모든 판독기에서는 해당 시스템 이름으로 자동으로 도입됩니다. 일반적으로 SCardIntroduceReader 는 기존 판독기의 이름을 변경하기 위해 호출됩니다.

SCardIntroduceReader 함수는 데이터베이스 관리 함수입니다. 다른 데이터베이스 관리 함수에 대한 자세한 내용은 스마트 카드 데이터베이스 관리 함수를 참조하세요.

판독기를 제거하려면 SCardForgetReader를 사용합니다.

예제

다음 예제에서는 스마트 카드 판독기를 소개합니다.

// This example renames the reader name.
// This is a two-step process (first add the new
// name, then forget the old name).
LPBYTE    pbAttr = NULL;
DWORD     cByte = SCARD_AUTOALLOCATE;
LONG      lReturn;

// Step 1: Add the new reader name.
// The device name attribute is a necessary value.
// hCardHandle was set by a previous call to SCardConnect.
lReturn = SCardGetAttrib(hCardHandle,
                         SCARD_ATTR_DEVICE_SYSTEM_NAME,
                         (LPBYTE)&pbAttr,
                         &cByte);
if ( SCARD_S_SUCCESS != lReturn )
{
    printf("Failed SCardGetAttrib\n");
    exit(1);  // Or other error action
}
// Add the reader name.
// hContext was set earlier by SCardEstablishContext.
lReturn = SCardIntroduceReader(hContext,
                               TEXT("My New Reader Name"),
                               (LPCTSTR)pbAttr );
if ( SCARD_S_SUCCESS != lReturn )
{
    printf("Failed SCardIntroduceReader\n");
    exit(1);  // Or other error action
}

// Step 2: Forget the old reader name.
lReturn = SCardForgetReader(hContext,
                            (LPCTSTR)pbAttr );
if ( SCARD_S_SUCCESS != lReturn )
{
    printf("Failed SCardForgetReader\n");
    exit(1);  // Or other error action
}

// Free the memory when done.
lReturn = SCardFreeMemory( hContext, pbAttr );

참고

winscard.h 헤더는 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 SCardIntroduceReader를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winscard.h
라이브러리 Winscard.lib
DLL Winscard.dll

추가 정보

SCardEstablishContext

SCardForgetReader

SCardIntroduceCardType

SCardIntroduceReaderGroup