|
-
Nov 4th, 2005, 07:42 PM
#1
Thread Starter
Lively Member
windows/bios keyboard buffer question...
I have a question... I started up my trusty "cmd" prompt under windows and I dumped the part of BIOS memory related to the keyboard buffer (16words). The problem is that it only contains keyboard information captured from inside the prompt. It does not capture key strokes from Internet Explorer, for example.
So my question is:
What is going on?
Does windows use different interrupts? INT9 INT16?
I guess I am lost.
Thanks,
Brandito
Master of Cyber Fu - A Temple of Digital Chi
-
Nov 6th, 2005, 09:33 PM
#2
Re: windows/bios keyboard buffer question...
Windows doesn't use interrupts, it uses window messages. If there is a keystroke buffer it would be maintained by the keyboard driver.
-
Nov 17th, 2005, 06:13 AM
#3
Lively Member
Re: windows/bios keyboard buffer question...
Take a look for hook functions in windows sdk also
-
Jun 1st, 2006, 04:08 AM
#4
New Member
Re: windows/bios keyboard buffer question...
Hiho,
sorry for bringing up this old topic but I'm somewhat confused.
"Windows doesn't use interrupts, it uses window messages. If there is a keystroke buffer it would be maintained by the keyboard driver."
I dont quite understand how this can work without an interrupt. What exactly happens when I physically press a key on my keyboard on a Windows (lets just assume WinXP although I dont know if 2k would make a difference) system and what is the difference in doing this in a Dos box ?
I hope someone can clear this up.
Greetings JG
-
Jun 1st, 2006, 03:21 PM
#5
Re: windows/bios keyboard buffer question...
The Windows kernel uses the keyboard interrupt to fill its own buffer, which is turned into Windows messages. The default low-memory keyboard buffer is program-specific - it's the buffer used by the command string interpreter, which is what's running in DOS. That buffer never gets filled when other programs are running unless they don't maintain their own buffers. (Most DOS programs used the buffer as-is, but some defined their own buffer for various reasons.)
 Originally Posted by Javageek321
What exactly happens when I physically press a key on my keyboard on a Windows ... system
The keyboard driver services the keyboard interrupt and loads the typed character into its (the keyboard driver's) buffer.
and what is the difference in doing this in a Dos box ?
I believe that the Windows keyboard driver still services the interrupt, but puts the character into the "DOS" keyboard buffer (sends a Windows message to the DOS box).
The most difficult part of developing a program is understanding the problem.
The second most difficult part is deciding how you're going to solve the problem.
Actually writing the program (translating your solution into some computer language) is the easiest part.
Please indent your code and use [HIGHLIGHT="VB"] [/HIGHLIGHT] tags around it to make it easier to read.
Please Help Us To Save Ana
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|