【问题标题】:How to programmatically dim Mac backlit keyboard如何以编程方式调暗 Mac 背光键盘
【发布时间】:2011-11-24 03:44:20
【问题描述】:

有没有办法在 Mac 上以编程方式调暗背光键盘?

【问题讨论】:

  • 您希望使用什么语言?如果您正在寻找 C 变体(objc、c、c++ 等),那么您应该关注 Johnsyweb 评论中的链接。请记住,它是一个“私有”API,这意味着它可以随时更改或消失。它也可能在某些时候被 Mac App Store 禁止,因为私有 API 的使用是 iPhone 应用商店拒绝的理由。
  • 我刚刚遇到了一个 Swift 类,它可以做到这一点。转换为 Obj-C 应该很简单。 github.com/CoordinatedHackers/keyboardparty/blob/master/…这段代码不是我写的,但是我测试过,效果很好。

标签: objective-c macos keyboard iokit backlight


【解决方案1】:
UInt64 lightInsideGetLEDBrightness()
{
kern_return_t kr = 0;
IOItemCount   scalarInputCount  = 1;
IOItemCount   scalarOutputCount = 1;
UInt64        in_unknown = 0, out_brightness;
//kr = IOConnectMethodScalarIScalarO(dataPort, kGetLEDBrightnessID,
//                                  scalarInputCount, scalarOutputCount, in_unknown, &out_brightness);
kr = IOConnectCallScalarMethod(dataPort, kGetLEDBrightnessID, &in_unknown, scalarInputCount, &out_brightness, &scalarOutputCount);
return out_brightness;
}

也许对你有帮助。

【讨论】:

  • 您需要包含哪些框架?我得到No matching function for call to 'IOConnectCallScalarMethod'
  • 我相信上面的 sn-p 取自 Amit Singh 的奖金在线章节到osxbook.com/book/bonus/chapter10/light 上的 Mac OSX Internals 一书,实际上是不完整的。如果您查看那里的代码,您就会明白我的意思。对于IOConnectCallScalarMethod,您需要IOKitLib.h,并且您需要链接到IOKit.framework
猜你喜欢
  • 2019-11-05
  • 1970-01-01
  • 2014-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-18
  • 2015-03-28
  • 1970-01-01
相关资源
最近更新 更多