Метод ISCardDatabase::GetProviderCardId
[Метод GetProviderCardId доступен для использования в операционных системах, указанных в разделе Требования. Он недоступен для использования в Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версиях, Windows Vista, Windows Server 2008 и последующих версиях операционной системы. Модули смарт-карт предоставляют аналогичные функции.]
Метод GetProviderCardId извлекает идентификатор (GUID) основного поставщика услуг для указанного смарт-карта.
Синтаксис
HRESULT GetProviderCardId(
[in] BSTR bstrCardName,
[out] LPGUID *ppguidProviderId
);
Параметры
-
bstrCardName [in]
-
Имя смарт-карта.
-
ppguidProviderId [out]
-
Указатель на идентификатор основного поставщика услуг (GUID) в случае успешного выполнения; Значение NULL , если операция завершилась сбоем.
Возвращаемое значение
Метод возвращает одно из следующих возможных значений.
Код возврата | Описание |
---|---|
|
Operation completed successfully (Операция выполнена успешно). |
|
Недопустимый параметр. |
|
Недопустимый указатель был передан в ppguidProviderId. |
|
Недостаточно памяти. |
Комментарии
Чтобы получить список интерфейсов смарт-карта, вызовите ListCardInterfaces.
Чтобы получить все известные смарт-карты, читатели и группы читателей вызывают ListCards, ListReaders и ListReaderGroups соответственно.
Список всех методов, предоставляемых этим интерфейсом, см. в разделе 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 |
Заголовок |
|
Библиотека типов |
|
DLL |
|
IID |
IID_ISCardDatabase определяется как 1461AAC8-6810-11D0-918F-00AA00C18068 |
См. также раздел