다음을 통해 공유


ISCardDatabase::GetProviderCardId 메서드

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

GetProviderCardId 메서드는 지정된 스마트 카드 대한 기본 서비스 공급자의 식별자(GUID)를 검색합니다.

구문

HRESULT GetProviderCardId(
  [in]  BSTR   bstrCardName,
  [out] LPGUID *ppguidProviderId
);

매개 변수

bstrCardName [in]

스마트 카드 이름입니다.

ppguidProviderId [out]

성공하면 기본 서비스 공급자의 식별자(GUID)에 대한 포인터입니다. 작업이 실패한 경우 NULL 입니다.

반환 값

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

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

 

설명

스마트 카드 인터페이스를 나열하려면 ListCardInterfaces를 호출합니다.

알려진 모든 스마트 카드를 검색하기 위해 판독 기와 판독기 그룹은 각각 ListCards, ListReadersListReaderGroups를 호출합니다 .

이 인터페이스에서 제공하는 모든 메서드 목록은 ISCardDatabase를 참조하세요.

위에 나열된 COM 오류 코드 외에도 스마트 카드 함수를 호출하여 요청을 완료한 경우 이 인터페이스는 스마트 카드 오류 코드를 반환할 수 있습니다. 자세한 내용은 스마트 카드 반환 값을 참조하세요.

예제

다음 예제에서는 지정된 스마트 카드 대한 기본 서비스 공급자의 식별자를 검색하는 방법을 보여 있습니다.

BSTR     bstrCard = NULL;
LPGUID   pguidProvId = NULL;
HRESULT  hr;

bstrCard = SysAllocString(L"My Card");
hr = pISCDataBase->GetProviderCardId(bstrCard,&pguidProvId);
if (FAILED(hr))
{
   printf("Failed GetProviderCardId\n");
}
else
{
    // Use pguidProvId as needed.
}

// Free BSTR when done.
if ( NULL != bstrCard )
{
    SysFreeString(bstrCard);
    bstrCard=NULL;
}

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버
Windows Server 2003 [데스크톱 앱만 해당]
클라이언트 지원 종료
Windows XP
서버 지원 종료
Windows Server 2003
헤더
Scardmgr.h
유형 라이브러리
Scardmgr.tlb
DLL
Scardssp.dll
IID
IID_ISCardDatabase 1461AAC8-6810-11D0-918F-00AA00C18068로 정의됩니다.

추가 정보

ISCardDatabase

ListCardInterfaces

ListCards

ListReaderGroups

ListReaders