WEB 开发 开发语言 Java 技术 .Net 技术 数 据 库 硬件使用
图象媒体 Linux/Unix 移动平台 嵌入开发 Windows 专区 软件工程
Ajax 技术 | ASP | PHP | ASP.NET | C# | JSP | Access | Oracle | 网页设计 | Flash | 安全专题 | IIS | VC/MFC | Delphi | C/C++
 你的位置:首页 > 开发语言 > C/C++

bioskey检测不到:Win键、右键菜单键、抓屏键、F11、F12键,请大家帮忙
[ 来源:ITWENKU 时间:2007-4-16 17:31:13 | 浏览:346人次 ]

函数名称: bioskey
函数原型: int bioskey(int cmd)
函数功能: 读取键盘值
函数返回: cmd=0:返回一个键盘值(ascii值放在低位,扫描码放在高位),若无按键,一直等
cmd=1:查询键盘是否按下:0-无键按下,非0-有键按下
cmd=2:返回控制键状态,返回值保存在低8位中
0-右边的shift键按下 5-已打开Scroll_Lock
1-左边的shift键按下 6-已打开Num_Lock
3-Ctrl键按下 7-已打开Caps_Lock
4-Alt键按下 8-已打开Insert
参数说明:
所属文件: <bios.h>

#include <stdio.h>
#include <bios.h>
#include <ctype.h>
int main()
{
int key, shift;
int lastshift;
while (1)
{
shift=bioskey(2);
if(shift!=lastshift)
printf("Shift=0x% 02x\n",shift);
if(bioskey(1))
{
key=bioskey(0);
if((key&0xFF)=='q')
break;
printf("Key=0x% 04x",key);
}
lastshift=shift;
}
return 0;
}
可以检测到其他的键盘,但是无法检测到Win键、右键菜单键、抓屏键、F11、F12键,现在想做一个键盘测试程序,怎样才能检测到这些键是否被按下


那就用键盘钩子吧


程序只能在dos下使用的,用tc开发的,不支持钩子吧


dos下还不是想咋搞咋搞, 最多挂键盘中断三 ...


能具体说说吗?dos下键盘中断怎么挂,给个小例子就好了,先谢谢了!


有人给说说吗?


如果要处理中断的话应该得要用汇编写吧,没实现过.


中断只能用汇编吗?C语言不能处理吗?


这里没有人知道怎么弄吗?


c当然可以写中断了,tc也提供这样的接口。

 相关文章
·二维数组动态添加数据
·类与结构体混合使用
·怎样阻止程序访问栈中的内容?
·关于 Visual C++ 在 AMD 平台上 无法使用的问题
·《核心编程》中的几个问题
·请问:看看程序是什么错误?

 推荐文章
关于高精度乘法的问题
求助c用函数编程
一个关于32位系统的问题
关于堆栈的问题!!!!!
监视哨搜索算法问题
一个矩阵的问题
srting类型的参数传递的问题
请问有什么 c++ design pattern 方面的好书么?
怎样将Turbo C 2.0中的C程序拷贝到 WORD中啊
请说一下 get()函数有什么用.
C++ 中有没现成的函数 可以获得 鼠标所在的某个控件上的整个区域?
我想换个语言用请前辈给点意见
 版权所有:IT问库
copyright © 2006 www.itwenku.cn all rights reserved.