Метод ISCardDatabase::ListCardInterfaces
[Метод ListCardInterfaces доступен для использования в операционных системах, указанных в разделе Требования. Он недоступен для использования в Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версиях, Windows Vista, Windows Server 2008 и последующих версиях операционной системы. Модули смарт-карт предоставляют аналогичные функции.]
Метод ListCardInterfaces извлекает идентификаторы (GUID) всех интерфейсов, поддерживаемых для указанного смарт-карта.
Синтаксис
HRESULT ListCardInterfaces(
[in] BSTR bstrCardName,
[out] LPSAFEARRAY *ppInterfaceGuids
);
Параметры
-
bstrCardName [in]
-
Имя смарт-карта.
-
ppInterfaceGuids [out]
-
Указатель на идентификаторы GUID интерфейса в случае успешного выполнения; Значение NULL , если операция завершилась сбоем.
Возвращаемое значение
Метод возвращает одно из следующих возможных значений.
Код возврата | Описание |
---|---|
|
Operation completed successfully (Операция выполнена успешно). |
|
Недопустимый параметр. |
|
В ppInterfaceGuids был передан недопустимый указатель. |
|
Недостаточно памяти. |
Комментарии
Чтобы получить основной поставщик услуг смарт-карта, вызовите GetProviderCardId.
Чтобы получить все известные смарт-карты, читатели и группы читателей вызовите ListCards, ListReaders и ListReaderGroups соответственно.
Список всех методов, предоставляемых этим интерфейсом, см. в разделе ISCardDatabase.
В дополнение к приведенным выше кодам com-ошибок этот интерфейс может возвращать код ошибки смарт-карта, если для выполнения запроса была вызвана функция смарт-карта. Дополнительные сведения см. в разделе Возвращаемые значения смарт-карты.
Примеры
В следующем примере показано получение идентификаторов интерфейсов, поддерживаемых для указанного смарт-карта.
BSTR bstrCard = NULL;
LPSAFEARRAY pGuids = NULL;
HRESULT hr;
bstrCard = SysAllocString(L"GemSAFE");
// Call the function for the specified card.
hr = pISCDataBase->ListCardInterfaces(bstrCard,
&pGuids);
if (FAILED(hr))
{
printf("Failed ListCardInterfaces\n");
// Take other error handling action as needed.
}
else
{
// Use the safe array as needed.
// ...
// Free BSTR when done.
if (bstrCard)
SysFreeString(bstrCard);
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows XP [только классические приложения] |
Минимальная версия сервера |
Windows Server 2003 [только классические приложения] |
Окончание поддержки клиентов |
Windows XP |
Прекращение поддержки сервера |
Windows Server 2003 |
Заголовок |
|
Библиотека типов |
|
DLL |
|
IID |
IID_ISCardDatabase определяется как 1461AAC8-6810-11D0-918F-00AA00C18068 |
См. также раздел