Windows 10访问笔记本电脑上的键盘灯

时间:2016-06-22 18:57:08

标签: c# windows-10

我最近购买了一款lenovo t420笔记本电脑。我用SSD升级它并从7到10进行更新。然后我安装了一个干净的Windows 10图像,没有所有的英国媒体报道。我想在不安装Lenovo软件的情况下访问键盘灯。它不是背光,而是显示器上方相机旁边的单个白色LED。当我冷启动机器时,我看到它瞬间出现,我假设这是POST测试或类似启动过程的一部分,因此我认为有一些方法可以连接到它

我尝试在Windows 10 UWP API中使用新的Lamp类,但这不起作用。我也尝试使用设备枚举方法,并没有显示任何看起来像LED的东西。

这是我到目前为止尝试过的代码,有点浓缩。

Lamp lamp = await Lamp.GetDefaultAsync();

这导致灯= null

string selectorString = Lamp.GetDeviceSelector();
DeviceInformationCollection devices = await DeviceInformation.FindAllAsync(selectorString);

这也会导致null

这是设备枚举代码:

DeviceInformationCollection devices = devices = await light.EnumerateDevices();

这给了我大约291个不同的设备,其中没有一个似乎匹配。我已经暂不在这里发帖,因为列表很长但可以提出要求。

有没有办法让我通过C#访问LED,如果不是C#而不是另一种语言?

编辑:我刚发现键盘键,我之前有错误的信息,它的Fn + Pgup。这样做,所以我想我不需要自己写一些东西,但我仍然很好奇为什么我找不到它的钩子。

作为一项学习练习,我仍然想知道如何使用LED。

1 个答案:

答案 0 :(得分:0)

好的,所以我认为这与我要回答的情况一样接近,我想把它放在这里以备将来好奇心。

这是一个指向页面的链接,其中包含有关如何从Linux和Windows获取ThinkLight的大量信息。

http://www.thinkwiki.org/wiki/ThinkLight

以下是链接中断的重要内容。

使用键盘控制ThinkLight适用于所有系统,因为它仅依赖于BIOS。只需按Fn + PageUp即可在打开和关闭之间切换状态。

从## 30系列机型(T430,T530,W530等)开始,按键更改为Fn + Space,以便更好地适应新的6排键盘布局。在带背光键盘的型号上,有4种状态:关闭,昏暗的背光,全背光和带ThinkLight的全背光。没有背光键盘的型号只能打开ThinkLight和关闭ThinkLight,这可以通过在安装了背光键盘的型号的BIOS中禁用背光键盘来获得。

通过thinkpad-acp进行软件控制

通过thinkpad-acpi进行软件控制 thinkpad-acpi提供了使用ACPI控制灯光的支持。安装后,简单的

# echo 255 > /sys/class/leds/tpacpi\:\:thinklight/brightness

将其打开并显示

# echo 0 > /sys/class/leds/tpacpi\:\:thinklight/brightness

再次关闭它。

这允许用户控制脚本中的灯光。不幸的是,没有已知的ThinkPad配备了光传感器(还)。 ;)

要在没有root权限的脚本中使用这些控件,您应该运行

# chmod 666 /sys/class/leds/tpacpi\:\:thinklight/brightness, which is probably best done using udev.

<强>应用

  • led-notification:Pidgin插件使用任何LED指示新的 消息。我已经分叉了led通知来支持ThinkLight via ThinkPad的支持ACPI。下面的插件与之不兼容 最新的pidgin或者没有为我编译。原作者 领导通知似乎是MIA。另一个fork pidgin-led-notification to 编写用户定义的字符串(添加到Gentoo / Linux)

  • gaim-thinklight:如果您使用的是GAIM,那么gaim-thinklight插件 将使您能够使用ThinkLight作为新指标 消息。这取决于thinkpad-acpi。

  • gaim-lighthink:gaim-lightthink是gaim-thinklight的替代品。 pidgin-blinklight:pidgin-blinklight是替代品 gaim-lighthink打算与Pidgin一起使用。

  • rocklight:rocklight是一个xmms可视化插件,可以实现 ThinkLight闪现你的音乐节拍。该套餐还包括 一个独立的频闪仪模式程序。

  • thinkblinkd:[1] Thinkblinkd是一个用来控制的python守护进程 它伴随着thinklight(可能还有Thinkpad上的其他灯光) 守护进程和控制脚本。

    使用HDAPS的防盗警报脚本可选择闪烁 警报布防时ThinkLight(默认情况下禁用,启用 设置$ use_light = 1)。

  • kopete-thinklight:[2]这个kopete插件将启用 thinklight作为新消息的通知。愚蠢的小黑客 闪烁ThinkLight:[3]一个可以设置SUID的小C程序 这样您就可以从需要执行的非特权程序中使用它 一点点通知。

  • thinkalert:[4]另一个可以设置SUID允许的C程序 非特权程序来操纵ThinkLight。添加一些 “愚蠢的小黑客眨眼ThinkLight”的功能 程序

  • thinklight-notification:此Evolution插件通知用户 每当有新消息到达时闪烁的灯光。

  • ThinkBlink:blink.sh是制作ThinkLight的通用bash脚本 眨。它可以用于任何应用程序。

Windows支持 同样,使用键盘控制ThinkLight无需任何其他软件即可运行。 IBM / Lenovo的Hotkey Features软件添加了打开/关闭指示灯时出现的OSD图标。

通过热键功能进行软件控制 Hotkey Features软件公开了一个界面,允许(除其他外)控制ThinkLight。有关更多信息,请参阅适用于Windows的Python脚本以控制ThinkPad功能