|
Beispiel 1, PC/SC + MCARD Initialisierung Das nachfolgende Projektbeispiel zeigt eine Standardvariante, wie sich die PC/SC + MCARD-API Schnittstelle prüfen und initialisieren läßt. Die Prüfroutine ermittelt den Status des Smartdienst 'SCardSvr', sowie eventueller Kollisionsdienste, wie die SCM Smartcardtools und versucht diese vor einer Initialisierung zu beenden. |
|
|
Private Sub Template() '- PC/SC Dienst: SCardSvr prüfen - If SCARD1.Services("SCardSvr", TASK_SERVICE, False) <> 1 then Debug.Print "Der Dienst 'SCardSvr' wird nicht ausgeführt !" Exit Sub End If '- Evtl. Kollisionsdienste suchen + beenden - SCARD1.Services "SCM_Smart_Card_Office_Kernel", TASK_SERVICE, True SCARD1.Services "SCMgr.exe", TASK_APPLICATION, True SCARD1.Services "sokscmpn.exe", TASK_APPLICATION, True '- Schnittstelle initialisieren - With SCARD1 If .GetReaderCount >0 then .CardReader = .GetReaderList .DisconnectFlag = SCARD_UNPOWER_CARD .AutoDetect False .Initialize Else Debug.Print "Es konnte kein Terminal ermittelt werden !" End If End With End Sub Private Sub SCARD1_OnMCARDInit() With SCARD1 Debug.Print "SDK Version = " & .Version Debug.Print "MCARD-Version = " & .CardDLL Debug.Print "ChannelID :" & .ChannelID Debug.Print "IFDSerialID :" & .IFDSerialID Debug.Print "IFDVersion :" & .IFDVersion End With End Sub Private Sub SCARD1_OnMCARDError() Debug.Print "Die Initialisierung der MCARD-API ist fehlgeschlagen !" End Sub Private Sub SCARD1_OnMCARDClose() Debug.Print "Verbindung PC/SC <-> MCARD API, Kartenleser getrennt !" End Sub Private Sub Form_Unload(Cancel as Integer) SCARD1.Shutdown End Sub |
|
| ©2011 by ProScan Elektronische Systeme, Buchholzer Weg 2, 42897 Remscheid, www.smartcardtools.de | |