Udostępnij przez


Interfejs użytkownika karty inteligentnej

Karta inteligentna interfejs użytkownika (UI) to jedno typowe okno dialogowe, które pozwala użytkownikowi określić lub wyszukać kartę inteligentną do otwarcia (czyli połączyć się z aplikacją i użyć jej).

Poniżej przedstawiono dwa sposoby użycia wspólnego okna dialogowego. Obaj zakładają, że zostanie wyświetlony interfejs użytkownika okna dialogowego. Aby uzyskać więcej informacji, zobacz OPENCARDNAME.

Aby wybrać kartę inteligentną do otwarcia

  1. Zadeklaruj zmienną typu OPENCARDNAME.
  2. Podaj wystarczającą ilość informacji w typowym oknie dialogowym, aby zawęzić wyszukiwanie karty inteligentnej, którą szuka aplikacja wywołująca. Obejmuje to określanie lpstrGroupNames, lpstrCardNamesi rgguidInterfaces. Obejmuje to również określenie preferowanego trybu udostępniania i protokołu do użycia, gdy wspólne okno dialogowe łączy się z kartą przy użyciu dwShareMode i dwPreferredProtocols elementów członkowskich OPENCARDNAME struktury.
  3. Wywołaj funkcję GetOpenCardName, aby wyświetlić wspólne okno dialogowe dla użytkownika. Zostanie wyświetlony prosty wiersz informacji pomocy, a jeśli zostanie znaleziona jedna z żądanych kart, karta zostanie wyróżniona na ekranie. W przypadku wyszukiwania wielu nazw kart pierwszy czytnik zawierający jedną z preferowanych kart zostanie wyróżniony.
  4. Następnie użytkownik wybiera kartę, klika OKi łączy się z kartą inteligentną.

Aby wyszukać określoną kartę

  1. Zadeklaruj zmienną typu OPENCARDNAME.

  2. Podaj wystarczającą ilość informacji w typowym oknie dialogowym, aby zawęzić wyszukiwanie karty inteligentnej, którą szuka aplikacja wywołująca. Obejmuje to określanie lpstrGroupNames, lpstrCardNamesi rgguidInterfaces.

  3. Utwórz funkcje Connect, Checki Disconnect callback oraz odpowiednio ustaw lpfnConnect, lpfnChecki odpowiednio lpfnDisconnect składowych danych.

    Nuta

    Wszystkie trzy funkcje i elementy członkowskie muszą być dostępne podczas korzystania z wspólnego okna dialogowego w ten sposób.

     

  4. Wywołaj funkcję GetOpenCardName typowe okno dialogowe.

  5. Wspólne okno dialogowe spowoduje wyszukanie żądanych kart. Jeśli zostanie znaleziona zgodna nazwa karty lub ciąg ATR, Connect, Sprawdźi Rozłącz funkcji wywołania zwrotnego zostanie wywołana w sekwencji. Jeśli karta przechodzi procedurę sprawdzania (oznacza to, że Sprawdzanie, czy wywołanie zwrotne zwraca TRUE), ta karta zostanie wyróżniona na ekranie użytkownika.

    Nuta

    Jeśli podano wiele nazw kart, pierwszy czytnik zawierający jedną z żądanych kart i przekazuje Sprawdzanie procedury będzie wybraną kartą.

     

  6. Jeśli nie znaleziono dopasowań, zostanie wyświetlone typowe okno dialogowe.