JackHamilton Posted June 30, 2005 Report Share Posted June 30, 2005 I am seeing a problem with a USB POSX Barcode scanner. This device works as a keyboard wedge - sending characters from the barcode scanner into the Windows Keyboard buffer message system. Firstly, I DO NOT WANT a keyfocused string control on the diagram, that's a pretty poor and brute for implementation - and not desireable for my application. I created a 'background' keystroke/barcode scanner detection using the LabVIEW Input Device routines - accessing the keyboard. I too am seeing the LV keyboard function return missing or duplicate charaters from the barcode scanner. Opening Notepad or Word - properly captures the barcode scan with no dups or missing chars. It would be nearly impossible to filter dup chars - as some barcode actually have repeated chars. Setting a delay in the keyboard input polling loop seems to improve the problem (I am NOT USING THE EVENT STRUCTURE) - but it does not go away. Also, this is not an effect cure - as loop poll timing is effected by CPU loading, other apps running,etc. :headbang: I am going to chalk this up to a bug in the LabVIEW keyboard routines - as it should not return duplicate or drop characters. It would appear this function is not doing any housekeeping - it appears to be destroying unread chars in its buffer, or rereading chars in its buffer it already read. I don't know why the function written this way would be useful or desireable for any application. :thumbdown: Quote Link to comment
i2dx Posted July 1, 2005 Report Share Posted July 1, 2005 hmmm ... i do not agree a key focus is a brute force method, i think yours is to complicaed ;-) to your problem, i guess your keyboard routine is getting in trouble with the windows event handler, which handles keyboard events (i assume you are using windows). You dont have direct access to the hardware since Win95 .... Following my theory, a solution would be to turn of the windows keyboard event handler, which will require some knowledge in the windows API for the period you are waiting for the scanner input ... maybe this helps ? cheers CB Quote Link to comment
Rolf Kalbermatter Posted July 1, 2005 Report Share Posted July 1, 2005 hmmm ... i do not agree a key focus is a brute force method, i think yours is to complicaed ;-)to your problem, i guess your keyboard routine is getting in trouble with the windows event handler, which handles keyboard events (i assume you are using windows). You dont have direct access to the hardware since Win95 .... Following my theory, a solution would be to turn of the windows keyboard event handler, which will require some knowledge in the windows API for the period you are waiting for the scanner input ... maybe this helps ? cheers CB 5179[/snapback] I agree too with this. Opening a dialog with a string control set to have the keyfocus is a very universal way. The user can have a barcode scanner attached through a keyboard wedge and just use that (configure the barcode scanner to append a carriage return to each barcode send and then check for that to autodismiss the dialog) or if there is no barcode scanner present for whatever reason he can type in the ID over his keyboard and press the OK button to close the dialog If you really need to do background barcode scanner input this is usually done through a serial port barcode scanner (or with the new USB scanners through a driver which installs as serial port driver instead of plugging into the system keyboard queue). These barcode scanners are typically a little more expensive as they are not sold in the same numbers. Rolf Kalbermatter Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.