c# 控制指示灯

[复制链接]
查看11 | 回复2 | 2008-12-30 10:02:54 | 显示全部楼层 |阅读模式
刚买了一个benq a53的本本,带有全尺寸的键盘,可是这个该死的明基没有提供NumLock键的指示灯,搞的很不方便,但有一个CapsLock指示灯,想用c#写个windows server,让CapsLock的指示灯两用,当NumLock键单独有效时,指示灯亮,当CapsLock键单独有效时指示灯闪亮(就是一亮一暗),当NumLock键和CapsLock键同时有效指示灯闪亮(就是一亮一暗)。

本人初学c#,不知道c#能不能完成这样的功能需求!

请高手指点下!!没有具体的实现也行啊,只要指点个思路。
现在大概能搞定了:
const int KEYEVENTF_EXTENDEDKEY = 0x1;
const int KEYEVENTF_KEYUP = 0x2;
keybd_event(0x14, 0x45, KEYEVENTF_EXTENDEDKEY, (UIntPtr)0);
keybd_event(0x14, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, (UIntPtr)0);
虚拟点击capslock
然后GetKeyboardState获得虚拟键盘状态
再用SetKeyboardState改变虚拟键盘状态
这样就能做到灯亮时小写灯灭时大写
全局键盘钩子还有待在研究哈哈.....

回复

使用道具 举报

千问 | 2008-12-30 10:02:54 | 显示全部楼层
没做过,有个思路。 1:下个全局键盘钩子。 2:控制亮灭,你可以模拟键盘消息。键盘的一次点击,就是一个消息,截获后你随便改。 去查查setwindowsHook(大概这么写的)这个API...
回复

使用道具 举报

千问 | 2008-12-30 10:02:54 | 显示全部楼层
能 查WINDOWS API去http://www.chenjiliang.com/Article/View.aspx?ArticleID=13564&TypeID=79...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行