编程改变键盘灯的简易方法

news/2024/10/31 1:33:26/

一个笔记本,大概是驱动安装不太对,numlock无法按下,所以它的UIO JKL M,. 这几个键全被当成小键盘的按键了。所以每次使用的时候还得拖个usb键盘,好麻烦。

 

我试了试,果然用按下Fn键的方法按动numlock不可行。不过,如果按住Fn,再按UIO等键的时候,却变回原先的键值。好奇怪。

 

第一反应是写个程序触发numlock,似乎不难吧。上网查了一下,做出如下代码:

procedure TForm1.Button2Click(Sender: TObject);
var
  KeyState : TKeyBoardState;
begin
  GetKeyboardState(KeyState);
  KeyState[VK_NUMLOCK] := 1;
  setKeyboardState(KeyState);
end;

运行后,似乎毫毛反应。

看一下API的说明,有这样一段话:

Remarks

Because the SetKeyboardState function alters the input state of the calling thread and not the global input state of the system, an application cannot use SetKeyboardState to set the NUM LOCK, CAPS LOCK, or SCROLL LOCK indicator lights on the keyboard.

原来不可以用SetKeyboardState来修改全局的指示灯啊。。。

 

明明有办法的。。。

这时想到用Sendkey。忽然想到autoit可以方便的实现功能的,试一下:

  send("{NUMLOCK}")

 

只一行语句,问题解决。。。

转载于:https://www.cnblogs.com/anjo/archive/2011/01/06/1926928.html


http://www.ppmy.cn/news/836485.html

相关文章

XP如何调节电脑开机之后数字键盘锁的灯是亮的?

egedit 注册表中 [HKEY_USERS//.DEFAULT//Control Panel//Keyboard] /"InitialKeyboardIndicators/"/"2/" 将InitialKeyboardIndicators改成2

开机自动开启键盘灯,键盘F12后2位按键为开启按键

需要在虚拟机xp系统启动时自动开启键盘灯 c代码如下: #include "stdafx.h" #include <Windows.h> void main() {keybd_event(145,0,0,0);keybd_event(145, 0, KEYEVENTF_KEYUP, 0); }编译后放入:开始--->程序---->启动 键盘码表: ESC键 VK_ESCAPE (27…

MySQL -- 联合索引 使用原则

最左前缀法则 如果索引了多列&#xff08;联合索引&#xff09;&#xff0c;要遵守最左前缀法则。最左前缀法则指的是查询从索引的最左列开始&#xff0c;并且不跳过索引中的列。如果跳跃某一列&#xff0c;索引将会部分失效(后面的字段索引失效)。 比如在一个 tb_user 表中&…

leetcode 287. 寻找重复数(java)

寻找重复数 leetcode 287. 寻找重复数题目描述解法一 Hash 表记录解法二 原地hash 上期经典 leetcode 287. 寻找重复数 来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 链接&#xff1a;https://leetcode.cn/problems/find-the-duplicate-number 题目描述 给定一个包含…

在终端中使用 solarized 配色

#- 第一步. git clone git://github.com/seebi/dircolors-solarized.git cp ~/dircolors-solarized/dircolors.256dark ~/.dircolors eval dircolors .dircolors#- 第二步. (先检查 echo $TERM vim .barshrc export TERMxterm-256color#- 第三步. git clone git://github.com/s…

Sunos内核版本对应的Solaris版本

SUNos简介 2010-02-01 11:46 Solaris 是Sun Microsystems研发的计算机操作系统。它被认为是UNIX操作系统的衍生版本之一。 目前Solaris仍旧属于私有软件。2005年6月14日&#xff0c;Sun公司将正在开发中的Solaris 11的源代码以CDDL许可开放&#xff0c;这一开放版本就是OpenSol…

有用的 Solaris 命令 [zt]

Solaris 中的命令非常之多&#xff0c;以致很难从中分离出那些很酷的命令。例如&#xff0c;有些命令报告程序进行每个系统调用时所要花费的时间&#xff0c;有些命令动态地显示系统活动信息&#xff0c;而且这些命令大部分都同时包含在了 Solaris 8 和 Solaris 9 中。这里&…

Solaris学习笔记

1. 32位操作系统&#xff08;CPU支持64位操作系统&#xff09;上使用VMWare安装Solaris10 32位系统时&#xff0c;提示系统没有支持64位系统的处理器&#xff0c;解决方案 2.使用root用户通过telnet登录 3.配置FTP 4.踢出已登录用户 5.查看系统当前运行级别 6.root用户通过…