如何用javascript或C语言调用键盘按键

How to call a keyboard key with javascript or a C language

我正在尝试找出一种方法来以编程方式按下操作系统 (Windows) 可以读取的键,而不是仅将字符打印为字符串。

目标:制作一个小型独立辅助应用程序,在特定时间自动按下热键,以改变由一台 Windows PC 控制的建筑物内部的照明。如果 javascript 如果有能力,我想编写应用程序代码,或者使用 C 语言。

在 Windows 中,应用程序可以使用 SendKeys.Send and related variants. See Simulating Mouse and Keyboard Events in Code 生成键盘事件。但是,这确实不是一种从一个应用程序到另一个应用程序进行通信的好方法或稳定方法...

应用程序之间通过 UI 的通信很脆弱,因为应用程序可能会随时更改它们的 UI(并且可能不知道其他人正在以这样的编程方式依赖它) .相反,应用程序之间的正确通信是通过应用程序编程接口 (API) 完成的。由于这是一种家庭自动化系统,您可能希望考虑采用/使用采用许多开发标准之一的设备,这些标准围绕如何在设备之间进行通信以及设备要理解的消息类型。例如,Google 的项目 Weave 和 Apple 的 HomeKit 都有标准的方法来告诉灯打开或关闭。