tag:blogger.com,1999:blog-11216446.post3881260670358415628..comments2023-02-22T16:56:33.386+01:00Comments on Modern software design: EIDNative Library 2.0 releasedSerhiy Perevoznykhttp://www.blogger.com/profile/05054587701401425172noreply@blogger.comBlogger34125tag:blogger.com,1999:blog-11216446.post-52377723442951814232012-03-09T09:11:25.979+01:002012-03-09T09:11:25.979+01:00The latest version of the EIDreade.dll 32 and 64 b...The latest version of the EIDreade.dll 32 and 64 bits are available for download: https://skydrive.live.com/redir.aspx?cid=b4508367face85d1&resid=B4508367FACE85D1!216&parid=B4508367FACE85D1!134Serhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-66870974454341654932010-02-11T00:27:28.643+01:002010-02-11T00:27:28.643+01:00Hi Serhiy,
I've just found your library and it...Hi Serhiy,<br />I've just found your library and it's great! Works perfectly.<br />I have one small question, could it be that the date format is influenced by the library?<br />My visual controls in Delphi use the standard date separator which is '/' on my computer.<br />This evening, I've added your libary to the application and the dateseparator seems to have changed to '-'.<br />I tried resetting it at startup to '/' without luck.<br />Any idea?<br /><br />Thx for the great software.Unknownhttps://www.blogger.com/profile/03133937569254878057noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-55865552883455750192009-12-27T17:00:23.425+01:002009-12-27T17:00:23.425+01:00See http://delphi32.blogspot.com/2009/12/reading-e...See http://delphi32.blogspot.com/2009/12/reading-eid-card-from-vba-using.html or use EIDNative library in place of standard eID SDKSerhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-69873137686313239062009-12-27T14:36:43.876+01:002009-12-27T14:36:43.876+01:00Serhiy,
Wil foto kunnen uitlezen via VBA. Kan jij...Serhiy,<br /><br />Wil foto kunnen uitlezen via VBA. Kan jij me helpen ?<br /><br />Gebruik volgend, echter foto opslaan lukt me niet.<br /><br />Dim EIDlib1 As New EIDLIBCTRLLib.EIDlib<br /> <br />Dim lhandle As Long<br /> <br />Dim RetStatus As New EIDLIBCTRLLib.RetStatus<br />Dim MapColPicture As New EIDLIBCTRLLib.MapCollection<br />Dim MapColID As New EIDLIBCTRLLib.MapCollection<br />Dim MapColAddress As New EIDLIBCTRLLib.MapCollection<br />Dim CertifCheck As New EIDLIBCTRLLib.CertifCheck<br /> <br />Dim strName As String<br />Dim strFirstName1 As String<br />Dim strBirthPlace As String<br />Dim strBirthDate As String<br />Dim strGender As String<br />Dim strNationality As String<br />Dim strNationalNumber As String<br /> <br />Dim strStreet As String<br />Dim strZipcode As String<br />Dim strMunicipality As String<br /> <br />Dim Pasfoto_Temp As Variant<br /> <br />Set RetStatus = EIDlib1.Init("", 0, 0, lhandle)<br /> <br />Set RetStatus = EIDlib1.GetID(MapColID, CertifCheck)<br /> <br />strName = MapColID.GetValue("Name")<br />strFirstName1 = MapColID.GetValue("FirstName1")<br />strBirthDate = MapColID.GetValue("BirthDate")<br />strBirthPlace = MapColID.GetValue("BirthPlace")<br />strGender = MapColID.GetValue("Gender")<br />strNationality = MapColID.GetValue("Nationality")<br />strNationalNumber = MapColID.GetValue("NationalNumber")<br /> <br />Set RetStatus = EIDlib1.GetAddress(MapColAddress, CertifCheck)<br /> <br />strStreet = MapColAddress.GetValue("Street")<br />strZipcode = MapColAddress.GetValue("ZIPCode")<br />strMunicipality = MapColAddress.GetValue("Municipality")<br /> <br />Set RetStatus = EIDlib1.GetPicture(MapColPicture, CertifCheck)<br />Pasfoto_Temp = Card.GetPicture()<br /> <br />Set RetStatus = EIDlib1.Exit<br /><br /><br />Alvast bedankt,<br /><br />StijnAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-11216446.post-17644281730512690842009-09-29T09:21:50.824+02:002009-09-29T09:21:50.824+02:00Hi Serhiy,
Now it's OK:
-no more msgbox
-Acc...Hi Serhiy,<br /><br />Now it's OK:<br />-no more msgbox <br />-Accent are supported<br /><br />Now I can go further with the developpment of my DB, anyway I will keep you informed about deployment on machine with Access runtime.<br /><br />Many thanks for you help and support<br /><br />Jean-LucJean-Luchttps://www.blogger.com/profile/13496284030980780400noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-78650367741006736662009-09-28T13:04:21.149+02:002009-09-28T13:04:21.149+02:00Hello,
It looks like you have a problem with tex...Hello,<br /><br /><br />It looks like you have a problem with text encoding.<br />The information is stored on eID using UTF8 encoding (by design).<br />VBA uses Unicode internally. Hence, we have to convert the UTF-8 to Unicode<br />when loading it into the VB app. When EIDNative reads information <br />(with or without middleware installed) it performs internally the <br />conversion from UTF8 to ANSI based on codepage 1252.<br /><br />VBA Controls generally use the current ANSI code page rather than Unicode but <br />the translation from Unicode will happen transparently - you don't have to do it yourself. <br />If the characters are not appearing then it may be that those characters are not part of your current<br />ANSI code page.<br /><br />InitReaderEx call failed when you do it directly on button click, you have to initialize reader before,<br />for example on form load. <br /><br />For example:<br /><br />Private Sub Form_Load()<br /> Report.Clear<br /> Picture1.picture = picture<br /> InitReaderEx Manager<br />End Sub<br /><br /><br />Private Sub Form_Unload(Cancel As Integer)<br /> DoneReader<br />End SubSerhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-41762276051445900292009-09-27T13:48:15.417+02:002009-09-27T13:48:15.417+02:00The version is 3.5.1.5075 but the middelware is in...The version is 3.5.1.5075 but the middelware is installed on my pc and the goal is also to use the dB on other machine without middelware.<br /><br />If I use the following code from the middelware I have the same result.<br /><br />Private Sub Commande0_Click()<br />Dim lHandle As Long<br />Dim EIDlib1 As New EIDLIBCTRLLib.EIDlib<br />Dim RetStatus As EIDLIBCTRLLib.RetStatus<br />Dim MapColID As New EIDLIBCTRLLib.MapCollection<br />Dim MapColAddress As New EIDLIBCTRLLib.MapCollection<br />Dim CertifCheck As New EIDLIBCTRLLib.CertifCheck<br />Dim Data As EIDIdentity<br /><br />Set RetStatus = EIDlib1.Init("", 0, 0, lHandle)<br />If (RetStatus.GetGeneral = 0) Then<br /> Set RetStatus = EIDlib1.GetID(MapColID, CertifCheck)<br /> Me.Texte2 = MapColID.GetValue("Name")<br /> Me.Texte4 = MapColID.GetValue("FirstName1")<br /> Me.Texte6 = MapColID.GetValue("Gender")<br /> Me.Texte8 = MapColID.GetValue("Nationality")<br /> Me.Texte10 = MapColID.GetValue("BirthPlace")<br /> Me.Texte12 = MapColID.GetValue("BirthDate")<br /> Me.Texte14 = MapColID.GetValue("NationalNumber")<br /> Set reststatus = EIDlib1.GetAddress(MapColAddress, CertifCheck)<br /> Me.Texte19 = MapColAddress.GetValue("Street")<br /> Me.Texte21 = MapColAddress.GetValue("Municipality")<br /> Me.Texte23 = MapColAddress.GetValue("ZIPCode")<br /> SavePhotoToFile ("person.jpg")<br /> Me!Image16.picture = "person.jpg"<br />Else<br /> MsgBox "no card inserted"<br />End If<br />Set RetStatus = EIDlib1.Exit<br />End Sub <br /><br />Rgds<br />Jean-LucJean-Luchttps://www.blogger.com/profile/13496284030980780400noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-53455372370958691592009-09-26T08:58:21.145+02:002009-09-26T08:58:21.145+02:00I forgot to ask you what version of Middleware do ...I forgot to ask you what version of Middleware do you have installed? The solution for message boxes depends from itSerhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-24112992167172879532009-09-25T22:19:51.257+02:002009-09-25T22:19:51.257+02:00Hi Serhiy,
I downloaded the new version and test ...Hi Serhiy,<br /><br />I downloaded the new version and test it.<br />If I use the "InitReaderEx Manager" instead of "InitReader Manager", the response of the ReadIDData(data) is false and then I cannot read the data on the card.<br /><br />With the "Initreader Manager" it works but with the msgbox and the accent are still not supported.<br />Is it possible to include some conversion afterward?<br /><br />Thanks<br />for your support <br /><br />Jean-LucAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-11216446.post-8775386600915224582009-09-25T08:26:03.484+02:002009-09-25T08:26:03.484+02:00Hello Jean-Luc,
I published a new release to solv...Hello Jean-Luc,<br /><br />I published a new release to solve the problems you mentioned. You can download it as always from my site: http://users.telenet.be/serhiy.perevoznyk/download/EIDLibrarySetup.zip<br /><br />1.The message boxes come from Middleware. When it's not installed will be no messages. If you want to avoid the messages always, I added new function InitReaderEx. Just call it in place of InitReader. <br /><br />2. I hope that problem with French characters is solved, but I don't have a right card to check this. Maybe you can test and tell me the result.Serhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-75151221893766340342009-09-23T21:27:46.412+02:002009-09-23T21:27:46.412+02:00Hi Serhiy
You are right, there was a quote in ...Hi Serhiy<br /> You are right, there was a quote in front of these lines. Now it works.<br />But...<br />1) when Access read the data I receive a msg box to confirm the access to the EIDcard, one for the identity, one for the address and one for the picture (I don't receive before for the picture). Is it possible to avoid these msgbox?<br />2) In the FirstName1 I get the two firstname of the person normal?.<br />3) Accent are not managed when accent in address: Ã: .<br /><br />Do you have solution or explanation for this. <br />Otherwise your DLL work fine, great job! I will also do test on machine without EID middelware and with Access Runtime.<br /><br />Regards<br /><br />Jean-LucAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-11216446.post-62006587484321539962009-09-23T19:33:21.215+02:002009-09-23T19:33:21.215+02:00Hi Jean-Luc,
Maybe you forgot to call InitReader ...Hi Jean-Luc,<br /><br />Maybe you forgot to call InitReader function? In my sample it's called from Form_Load sub<br /><br />SerhiySerhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-91460048697685106712009-09-23T10:34:52.119+02:002009-09-23T10:34:52.119+02:00Hi Serhiy,
I'm currently testing your library...Hi Serhiy,<br /><br />I'm currently testing your library to read data from Identity cards within an Access2007 application (VBB). For this I use the example code you deliver. I put the EIDNative in a Module and the code in a Form a response to a click.<br />The problem is that the answer to the ReadIDData(Data) is false and then no return from the card.<br />The only think working is the savephototofile sub.<br />Can you help me?<br /><br />Thanks<br />Jean-LucAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-11216446.post-67181315800030111682009-09-08T17:32:06.694+02:002009-09-08T17:32:06.694+02:00Hi Rene,
You are almost right: in case of problem...Hi Rene,<br /><br />You are almost right: in case of problems with birth date the returned value is string.Empty (not null), but you can always use the standard check string.IsNullOrEmptySerhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-4360186109490545732009-09-08T16:12:53.541+02:002009-09-08T16:12:53.541+02:00Hi Serhiy,
Congratulations for the great work wit...Hi Serhiy,<br /><br />Congratulations for the great work with EIDnative.<br /><br />In the birthdate issue with people who only have a Year return Null value.<br /><br />it's correct?<br /><br />Thanks for your help,<br /><br />ReneRenéhttps://www.blogger.com/profile/11210358422326368409noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-53514411503843687722009-07-03T08:19:51.719+02:002009-07-03T08:19:51.719+02:00Hi,
Today I uploaded the new release where I fix...Hi, <br /><br />Today I uploaded the new release where I fixed the problem mentioned by Kurt and added new class for translating nationality name from Dutch and French to ISO code as it was asked by Nicky.<br /><br />The new release is available on my website: http://users.telenet.be/serhiy.perevoznyk/download/EIDLibrarySetup.zip<br /><br />For Thomas and Nicky: I added your names to the contributors list. Thank you guys for your help.Serhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-39773492393431721582009-07-01T18:51:22.119+02:002009-07-01T18:51:22.119+02:00Hi Kurt and Nicky. Thanks for the feedback, I will...Hi Kurt and Nicky. Thanks for the feedback, I will check it tomorrowSerhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-26817523760447604152009-07-01T12:26:23.725+02:002009-07-01T12:26:23.725+02:00Hey Serhiy,
I've encountered the same problem...Hey Serhiy,<br /><br />I've encountered the same problem as Kurt.<br />As a solution, I reinitialize.<br /><br />Kind regards,<br /><br />NickyUnknownhttps://www.blogger.com/profile/06031003488005468058noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-66994812371732614192009-07-01T11:32:50.021+02:002009-07-01T11:32:50.021+02:00Hey Serhiy,
Ik heb je EIDTestApp getest en ik ond...Hey Serhiy,<br /><br />Ik heb je EIDTestApp getest en ik ondervind problemen met de events als ik mijn eID kaart herhaaldelijk in mijn ACR38U reader steek en vervolgens er weer uit haal. Na het uithalen werkt de app niet meer als je je eID kaart er terug insteekt.<br /><br />Mvg,<br />Kurt SanteléAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-11216446.post-47688879358289676772009-06-15T17:29:03.419+02:002009-06-15T17:29:03.419+02:00Hey Serhiy,
Thanks for the new version and the
qu...Hey Serhiy,<br /><br />Thanks for the new version and the<br />quick response.<br />Is there a way to get to the ISO nationality values without having<br />the middleware installed.<br />Cause now I don't have it installed and I'm not able to get the ISO nor the english names.<br /><br />Kind Regards,<br /><br />Nicky VercauterenUnknownhttps://www.blogger.com/profile/06031003488005468058noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-72250846600961162352009-06-15T14:06:58.635+02:002009-06-15T14:06:58.635+02:00Hello,
I added some new methods, like ListReaders...Hello,<br /><br />I added some new methods, like ListReaders() that returns the list of installed card readers and modified the reading and encoding of the nationality field. <br />In case if EID middleware is installed (do not mix it with EID DSK) you have 2 options during EIDNative initialization. In case if you call InitReader passing false as a value for supportMiddleware parameter, EIDNative reads card directly as if middleware is not present at all. It can speed up access speed, but also gives different result for the nationality field.<br /><br />If middleware is installed and supported, it returns "be" as a value in case if original value stored on the card is "Belg".<br /><br />EIDNative now checks this situation and returns English name for nationality and country ISO code as well.<br /><br />I also modified events reporting and hope the problem reported by Thomas is solved.<br /><br />New setup is available on my website http://users.telenet.be/serhiy.perevoznyk/download/EIDLibrarySetup.zip<br /><br />Waiting for feedback from Thomas and Nicky...Serhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-69495838464996450902009-06-12T10:12:55.125+02:002009-06-12T10:12:55.125+02:00Serhiy,
Werkt net iets beter... Alleen denk ik da...Serhiy,<br /><br />Werkt net iets beter... Alleen denk ik dat je Events niet goed worden ontbonden door DoneReader(). Heb nog niet echt veel tijd gehad om het na te kijken. Wanneer je wisselt van lezer en daarna terug de eerste aanspreekt lijkt het alsof de events telkens dubbel worden teruggesmeten. De eerste keer krijg je de event 1 maal, dan 2 maal, dan 4 maal etc...<br /><br />Hier is tracker informatie:<br />-------------------------------------<br />// Initial startup<br />-------------------------------------<br />eidCard.InitReader(false, 1);<br />ACTIVATE 12/06/2009 10:01:08<br />INSERT 12/06/2009 10:01:08<br />READING 12/06/2009 10:01:08<br />READ 12/06/2009 10:01:10<br />-------------------------------------<br /><br /><br />-------------------------------------<br />// Switch and switchback reader<br />// Seems as if Events are double binded?<br />-------------------------------------<br />eidCard.DoneReader();<br />eidCard.InitReader(false, 0);<br />eidCard.DoneReader();<br />eidCard.InitReader(false, 1);<br />ACTIVATE 12/06/2009 10:02:33<br />INSERT 12/06/2009 10:02:33<br />READING 12/06/2009 10:02:33<br />READ 12/06/2009 10:02:35<br />REMOVE 12/06/2009 10:02:35<br />ACTIVATE 12/06/2009 10:02:36<br />INSERT 12/06/2009 10:02:36<br />READING 12/06/2009 10:02:36<br />READ 12/06/2009 10:02:38<br />REMOVE 12/06/2009 10:02:38<br />-------------------------------------<br /><br /><br />-------------------------------------<br />// Switch and switchback reader<br />// Seems as if Event are double-double binded?<br />// Are events being released?<br />-------------------------------------<br />eidCard.DoneReader();<br />eidCard.InitReader(false, 0);<br />eidCard.DoneReader();<br />eidCard.InitReader(false, 1);<br />ACTIVATE 12/06/2009 10:03:41<br />INSERT 12/06/2009 10:03:41<br />READING 12/06/2009 10:03:41<br />READ 12/06/2009 10:03:43<br />REMOVE 12/06/2009 10:03:43<br />ACTIVATE 12/06/2009 10:03:44<br />INSERT 12/06/2009 10:03:44<br />READING 12/06/2009 10:03:44<br />READ 12/06/2009 10:03:47<br />REMOVE 12/06/2009 10:03:47<br />ACTIVATE 12/06/2009 10:03:47<br />INSERT 12/06/2009 10:03:47<br />READING 12/06/2009 10:03:47<br />INSERT 12/06/2009 10:03:47<br />READING 12/06/2009 10:03:47<br />READ 12/06/2009 10:03:49<br />REMOVE 12/06/2009 10:03:49<br />ACTIVATE 12/06/2009 10:03:50<br />INSERT 12/06/2009 10:03:50<br />READING 12/06/2009 10:03:50<br />INSERT 12/06/2009 10:03:50<br />READING 12/06/2009 10:03:50<br />READ 12/06/2009 10:03:52<br />REMOVE 12/06/2009 10:03:52<br />ACTIVATE 12/06/2009 10:03:53<br />INSERT 12/06/2009 10:03:53<br />READING 12/06/2009 10:03:53<br />READ 12/06/2009 10:03:55<br />REMOVE 12/06/2009 10:03:55<br />READ 12/06/2009 10:03:56<br />REMOVE 12/06/2009 10:03:56<br />READ 12/06/2009 10:03:56<br />REMOVE 12/06/2009 10:03:56<br />----------------------------------------<br /><br /><br />Verder zou het nog leuk zijn indien je een listing functie kunt schrijven voor de aanwezige lezers, met ID en Description. Voor zover ik weet zijn deze functies beschikbaar in de winscard library.<br /><br />MVGUnknownhttps://www.blogger.com/profile/13097869361253488225noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-19762279714768459852009-06-10T20:27:21.959+02:002009-06-10T20:27:21.959+02:00Hi Nicky,
Thank you for the information and a ver...Hi Nicky,<br /><br />Thank you for the information and a very good idea concerning nationality presentation. I will try to implement it as soon as possible.<br /><br />For you and Thomas my e-mail is <br />serge_perevoznyk at hotmail.com<br /><br />For other readers: you can leave your comment here :)Serhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-22982568343528338662009-06-10T12:19:49.868+02:002009-06-10T12:19:49.868+02:00Hey Serhiy,
The official EID Middleware isn't...Hey Serhiy,<br /><br />The official EID Middleware isn't installed.<br />It's to slow :p<br /><br />Just a suggestion:<br /><br />Can you make both types of nationality presentation availble.<br />Something like : <br />Nationality = be<br />NationalityLong = Belg<br /><br />Then I can get the data I need and other people who might need the short version won't have any problems.<br /><br />I noticed you also fixed the birthdate issue with people who only have a Year on it.<br />=> Nice because I needed that to.<br /><br />Thanks for the fast reply and the great job you did on the EID Native Library !<br /><br />Yours Sincerely,<br /><br />NickyUnknownhttps://www.blogger.com/profile/06031003488005468058noreply@blogger.comtag:blogger.com,1999:blog-11216446.post-39197550960852039862009-06-09T19:50:26.967+02:002009-06-09T19:50:26.967+02:00Hi Nicky,
I can fix this problem, but I need som...Hi Nicky, <br /><br />I can fix this problem, but I need some addition information from you. <br /><br />Do you have EID Middleware installed or not? EIDNative works in different way when Middleware is installed<br /><br />SerhiySerhiy Perevoznykhttps://www.blogger.com/profile/05054587701401425172noreply@blogger.com