Recommendations for scanning software drivers?

Our fleet wants to scan driver licenses and import data into our user system. We are looking for something that will allow us to programmatically obtain data from the scanner (including the image) and insert it into our application. I was wondering if anyone has experience with this type of system, and can recommend someone or say which ones should be avoided. Our application is written in PowerBuilder and uses a DB2 database.

+3
source share
7 answers

Try solutions from idScan.net (www.idScan.net) There is an SDK that will allow you to develop driver licenses for all states in the USA and Canada. You can also purchase equipment, such as an E-seek m250 ID scanner, which reads both a 2D barcode and magnetic strips (software included). Good luck

+5
source

We support something similar in our recording management software. Our application is designed to work with a wedge reader, since they are easiest to start and run (no special drivers are required). When the card is pumped out, the reader sends keystrokes to the OS for each character encoded on the magnetic stripe, with a simulated press of the Enter key between each track (AAMVA-compatible license has 3 data tracks).

This is a little annoying because it behaves exactly as if someone were typing the data manually, so there is no easy way to tell when you have all the data (you can just wait to get 3 lines of information, but then it's hard detect invalid cards, for example, when someone tries to carry a student’s identification card that can have less than 3 tracks encoded, in this case the application freezes forever, expecting that a non-existent third track will be received). To cope with this, we use a "fault tolerant" approach: every time we get hit Enter , we immediately process the current line, keeping a record of what track we expect at this point (1, 2 or 3). If the current track cannot be processed (for example, a different start symbol appears on the track that corresponds to the document for the AAMVA format driver license), we assume that the user should have pulled out something other than the driver license.

I am not sure if the reader supports reading image data or not. It can be programmed to return a subset of the data to the map, but we just use the factory default setting, which seems to only return the first three data tracks (and, in fact, I believe that the image data is encoded in a 2D barcode, found on some licenses, not on the magnetic strip, but I could be wrong).

For more information on the AAMVA track format used on magnetic strips of driver licenses, see Appendix F in the current standard .

The main approach that we use:

  • Display a modal dialog box with a hidden text box that is given focus. The dialog box simply tells the user to swipe the card through the reader.

  • The user views the map, and the reader begins to send key change events to a hidden text field.

  • The keydown event handler for the text box monitors Enter keystrokes. When someone is discovered, we take the last line, which is currently stored in the text box, and pass it to the track parser, which tries to parse the track in accordance with the AAMVA format.

  • If this “unsuccessful” parsing session is not performed for the current track, we change the dialog status message to a message informing the user that the map cannot be read. At this stage, the text field will still receive additional events related to the recording, but this is normal, because subsequent tracks have a high enough chance that the user will still see an error message whenever the reader stops sending data .

  • If the parsing is completed successfully, we increase the counter, which tells the parser which trace it should process next.

  • If the current number of tracks is more than 3, we know that we processed 3 tracks. At this stage, we analyze three tracks (which have already divided most of the fields up, but are still saved as lines at this point) into a more convenient DriversLicense object that performs additional checks of the track data and makes it more consumed from our application ( DOB field conversion from a string to a real Date object, parsing subfields in the AAMVA Name field to first name, middle name, last name, suffix of the name, etc.). If this second phase of the parsing fails, we tell the user to re-paint the map. If this succeeds, we close the dialog and pass the DriversLicense object DriversLicense our main application for further processing.

+2
source

If your scanner "meets two requirements," you can control it from your application using an ActiveX control that you can buy online, like this one . You will be able to manage your main scanning parameters (quality, color, single / multiple pages, output format, etc.), start scanning from your application, save the result as a file and transfer this file where necessary. We have used it with VB code for the past 2 years. He works.

+1
source

You might want to use a magnetic stripe reader to get driver license information from the card. Since I remember that most Driver licenses simply have plain text data in these bands, it is therefore relatively easy to program. MagStripe readers are also currently cheap.

0
source

You can try something from this list: http://www.adams1.com/plugins.html

I myself did not use them myself.

0
source

I wrote a parser in C #, and while it is “good,” it is still far from perfect.

I can’t find it, but the Wikipedia creature that was used for existence has its own patterns to look for (believe me, parsing this in itself is a pain without any help).

Keep in mind that different states have different laws so that you can and cannot use a government identifier. Texas has one.

We use a dell card reader, and it enters it exactly as if it were being entered from the keyboard, and then the enter key. This made programming / very / simple, because then you just send focus to the text field and wait for input. The main keys that break it into pieces are carrots "^". Break it down and you will have your main pieces.

0
source

You can also use the InfoScan SDK. You can find it at www.scan-monitor.com, the system allows you to use any scanner and not to purchase a specific scanner.

0
source

All Articles