Condividi tramite


Metodo ISCardDatabase::GetProviderCardId

[Il metodo GetProviderCardId è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Non è disponibile per l'uso in Windows Server 2003 con Service Pack 1 (SP1) e versioni successive, Windows Vista, Windows Server 2008 e versioni successive del sistema operativo. I moduli smart card offrono funzionalità simili.

Il metodo GetProviderCardId recupera l'identificatore (GUID) del provider di servizi primario per la smart card specificata.

Sintassi

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

Parametri

bstrCardName [in]

Nome della smart card.

ppguidProviderId [out]

Puntatore all'identificatore del provider di servizi primario (GUID) se ha esito positivo; NULL se l'operazione non è riuscita.

Valore restituito

Il metodo restituisce uno dei valori possibili seguenti.

Codice restituito Descrizione
S_OK
Operazione completata correttamente.
E_INVALIDARG
Parametro non valido.
E_POINTER
Un puntatore non valido è stato passato in ppguidProviderId.
E_OUTOFMEMORY
Memoria insufficiente.

 

Commenti

Per elencare le interfacce della smart card, chiamare ListCardInterfaces.

Per recuperare tutte le smart card note, i lettori e i gruppi di lettori chiamano rispettivamente ListCards, ListReaders e ListReaderGroups .

Per un elenco di tutti i metodi forniti da questa interfaccia, vedere ISCardDatabase.

Oltre ai codici di errore COM elencati in precedenza, questa interfaccia può restituire un codice di errore della smart card se è stata chiamata una funzione smart card per completare la richiesta. Per altre informazioni, vedere Valori restituiti smart card.

Esempio

Nell'esempio seguente viene illustrato il recupero dell'identificatore del provider di servizi primario per la smart card specificata.

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;
}

Requisiti

Requisito Valore
Client minimo supportato
Windows XP [solo app desktop]
Server minimo supportato
Windows Server 2003 [solo app desktop]
Fine del supporto client
Windows XP
Fine del supporto server
Windows Server 2003
Intestazione
Scardmgr.h
Libreria dei tipi
Scardmgr.tlb
DLL
Scardssp.dll
IID
IID_ISCardDatabase è definito come 1461AAC8-6810-11D0-918F-00AA0C18068

Vedi anche

ISCardDatabase

ListCardInterfaces

ListCards

ListReaderGroups

ListReaders