• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 356
  • Last Modified:

distinguish the data entered from two or more usb keyboards

is there is any way to distinguish the data entered from two or more usb keyboards in a windows application..?
0
dxbspider
Asked:
dxbspider
1 Solution
 
farsightCommented:
Ooooh!  Good question.  I've always thought computers should be able to have any number of any type of devices attached: monitors, keyboards, mice, pointing devices, remote controls, terminals, etc.  I'd love two have two mouse-pointers, too -- one for a mouse in each hand.

Listening!
0
 
iboutchkineCommented:
How about 2 mice and an accu-point for your nose :)
0
 
dante469Commented:
dxbspider,

Have similar issue and unable to find solution...  Have looked but bottom line the driver passes the keystrokes w/o any identification of souce.  Sounds like only soultion is to write something at a lower level then the driver :(...

Sorry no great solution.

Have Fun,
Dante
0
Get your Disaster Recovery as a Service basics

Disaster Recovery as a Service is one go-to solution that revolutionizes DR planning. Implementing DRaaS could be an efficient process, easily accessible to non-DR experts. Learn about monitoring, testing, executing failovers and failbacks to ensure a "healthy" DR environment.

 
_TAD_Commented:

dxbspider>

I don't believe you'll find the answer that you are looking for unless you monitor each USB port yourself.

By simply monitoring keystrokes you are looking at the keyboard message queue (more or less).  

If I were in your shoes, I'd try and look at the port activity itself and determine what data is comming in from each port.

Of course, this in itself might not be very helpful either.  You can easily daisy-chain a number of items into a usb port and have them all use the same port.  If this is the case, then you need to start looking at the IRQ settings and find out when an object sends an interrupt request, which object is it?

I haven't done the research, but ultimately this may all pan out to nothing.  That is assuming that ALL key presses have the same IRQ id.  This would be okay if the two keyboards use different ports, but if both keyboards use the same port AND they both have the same IRQ settings.... I don't think it would be possible to tell the two apart.
0
 
dxbspiderAuthor Commented:

  thanks dante and TAD for all the valuable inputs. all i wanted to know was whether it needs lower level coding but now  i know thats inevitable.  i'll focus my attention towards  win32 api classes and have a last try. meanwhile i'll keep this topic open and  all inputs are welcome from all corners.
  thanks a lot.
0
 
farsightCommented:
You might consider USB Monitor 2.26 available at:
http://www.hhdsoftware.com/
http://www.hhdsoftware.com/usbmon.html        --- details

"HHD Software USB Monitor is an invaluable tool for all developers and engineers, who design, create and connect to PC a whole range of equipment with universal serial bus on board. This tool captures all the USB Request Blocks (URBs) transferred from the device driver to the host controller and back."

(The eval version may gt you through your problem.)

I don't know anything about it, so I'm not certain it'll be useful.

--- Other potentially useful links ---
http://www.softconnex.com/products.html
http://www.jungo.com/  --- USB driver development tools
http://www.keil.com/books/usbbooks.asp   --- books

http://www.usb.org/home --- the org that controls the USB standard(s)
http://www.usb.org/developers/docs/ --- the actual USB 2.0 specification  (1.1 spec near bottom)
http://www.usb.org/developers/developers/tools/
0
 
dxbspiderAuthor Commented:

thanks farsight i'll look into it and will give u a feedback .
0

Featured Post

NFR key for Veeam Agent for Linux

Veeam is happy to provide a free NFR license for one year.  It allows for the non‑production use and valid for five workstations and two servers. Veeam Agent for Linux is a simple backup tool for your Linux installations, both on‑premises and in the public cloud.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now