Dela via


Användargränssnitt för smartkort

Smartkortet användargränssnittet (UI) är en enda gemensam dialogruta som låter användaren ange eller söka efter ett smartkort att öppna (dvs. ansluta till och använda i ett program).

Följande är två sätt att använda den gemensamma dialogrutan. Båda förutsätter att dialogrutegränssnittet visas. Mer information finns i OPENCARDNAME.

Så här väljer du ett smartkort för att öppna

  1. Deklarera en variabel av typen OPENCARDNAME.
  2. Ange tillräckligt med information i den gemensamma dialogrutan för att begränsa sökningen efter ett smartkort som det anropande programmet letar efter. Detta inkluderar att ange lpstrGroupNames, lpstrCardNamesoch rgguidInterfaces. Detta inkluderar även att ange ett föredraget delningsläge och protokoll som ska användas när den gemensamma dialogrutan ansluter till kortet med hjälp av dwShareMode och dwPreferredProtocols medlemmar i OPENCARDNAME- struktur.
  3. Anropa funktionen GetOpenCardName för att visa den gemensamma dialogrutan för användaren. En enkel hjälpinformationsrad visas, och om ett av korten som begärs hittas markeras kortet i displayen. För sökningar med flera kortnamn markeras den första läsaren som innehåller ett av de önskade korten.
  4. Användaren väljer sedan ett kort, klickar på OKoch ansluter till smartkortet.

Om du vill söka efter ett visst kort

  1. Deklarera en variabel av typen OPENCARDNAME.

  2. Ange tillräckligt med information i den gemensamma dialogrutan för att begränsa sökningen efter ett smartkort som det anropande programmet letar efter. Detta inkluderar att ange lpstrGroupNames, lpstrCardNamesoch rgguidInterfaces.

  3. Skapa funktionerna Connect, Checkoch Disconnect callback och ange lpfnConnect, lpfnCheckoch lpfnDisconnect datamedlemmar på rätt sätt.

    Not

    Alla tre funktionerna och medlemmarna måste vara tillgängliga när du använder den gemensamma dialogrutan på det här sättet.

     

  4. Anropa GetOpenCardName gemensam dialogrutefunktion.

  5. Den gemensamma dialogrutan söker sedan efter de begärda korten. Om ett matchande kortnamn eller ATR-sträng hittas anropas funktionerna Connect, Checkoch Disconnect callback i följd. Om ett kort skickar Check-rutinen (det vill säga Check återanrop returnerar TRUE) markeras det här kortet i visningen för användaren.

    Not

    Om flera kortnamn anges är den första läsaren som innehåller ett av de begärda korten och skickar Check-rutin det valda kortet.

     

  6. Om inga matchningar hittas visas en gemensam dialogruta.