[AHK]--显示器输入源快速切换

news/2024/9/16 4:58:04/

显示器输入源快速切换

    • 前言
    • DDC/CI 协议简介
    • Auto Hot Key简介
    • 显示器输入源快捷键切换ahk脚本代码
    • 获取你的显示器的输入源id
    • 编译成.exe可执行文件

前言

当你有多台设备需要共用一台显示器,这个时候通过显示器物理按键频繁切换显示器输入源就会比较麻烦。如果我们可以通过快捷键的方式切换的话,将会方便不少。

本文将介绍如何在windows环境下使用ahk脚本实现显示器输入源快捷键切换。

参考资料:https://www.chiphell.com/thread-2248082-1-1.html

DDC/CI 协议简介

DDC/CI协议是Display Data Channel Command Interface的简称。基于DDC/CI协议,用户可以通过鼠标和人性化的软件界面来完成显示器的各项设置和色彩调节,而不必使用传统的OSD菜单。

以上简介来自百度百科,其实DDC/CI协议说白了就是可以让我们连接显示器的设备与显示器之间进行通信,方便我们调节显示器的设置。

本文所介绍的显示器输入源快速切换的方法需要你的显示器支持DDC/CI协议,请确保你的显示器支持该协议并打开该设置。

Auto Hot Key简介

Auto Hot Key是一款免费的、Windows下开源的热键脚本语言。也可以通过命令调用系统接口及程序,并创建基于简单语言的图形化界面的执行程序。

官网地址:Auto Hot Key

如果你的电脑没有安装Auto Hot Key,你可以访问以上官网进行下载安装。

显示器输入源快捷键切换ahk脚本代码

首先新建一个.ahk文件。

在这里插入图片描述

然后在该文件中写入以下代码:

(其中切换各个输入源的id需要你根据你自己的显示器去更改,以下是适用于aoc u2790pqu显示器的ahk脚本,我还测试了benq ew2770qz显示器,也可以使用)

; 函数getMonitorHandle()和destroyMonitorHandle(handle)涉及到windows编程,本人水平有限,没弄懂如何编写,只会使用,感兴趣的可以自己看看英文原注释
; Finds monitor handle based on MousePosition
getMonitorHandle()
{; Initialize Monitor handlehMon := DllCall("MonitorFromPoint", "int64", 0 ; point on monitor, "uint", 1) ; flag to return primary monitor on failure; Get Physical Monitor from handleVarSetCapacity(Physical_Monitor, 8 + 256, 0)DllCall("dxva2\GetPhysicalMonitorsFromHMONITOR", "int", hMon   ; monitor handle, "uint", 1   ; monitor array size, "int", &Physical_Monitor)   ; point to array with monitorreturn hPhysMon := NumGet(Physical_Monitor)
}destroyMonitorHandle(handle)
{DllCall("dxva2\DestroyPhysicalMonitor", "int", handle)
}; 更改显示器输入源函数
; Used to change the monitor source
setMonitorInputSource(source)
{handle := getMonitorHandle()DllCall("dxva2\SetVCPFeature", "int", handle, "char", 0x60 ;VCP code for Input Source Select, "uint", source)destroyMonitorHandle(handle)
}; 获取显示器输入接口id函数
; Gets Monitor source
getMonitorInputSource()
{handle := getMonitorHandle()DllCall("dxva2\GetVCPFeatureAndVCPFeatureReply", "int", handle, "char", 0x60 ;VCP code for Input Source Select, "Ptr", 0, "uint*", currentValue, "uint*", maximumValue)destroyMonitorHandle(handle)return currentValue
}; BenQ ew2770qz 输入接口id
; dp=16=10H=0x10
; hdmi1=17=11H=0x11
; hdmi2=18=12H=0x12; AOC U2790PQU 输入接口id
; dp=15=0fH=0x0f
; hdmi1=17=11H=0x11
; hdmi2=18=12H=0x12; 设置快捷键win+z, 获取显示器输入接口id
; Get sources~id
#z::
MsgBox, % getMonitorInputSource()
return; 设置快捷键win+x, 切换dp输入源
; Switching sources~dp
#x::
;to dp
setMonitorInputSource(0x0f)
return; 设置快捷键win+c, 切换hdmi 1输入源
; Switching sources~hdmi1
#c::
;to hdmi1
setMonitorInputSource(0x11)
return; 设置快捷键win+v, 切换hdmi 2输入源
; Switching sources~hdmi2
#v::
;to hdmi2
setMonitorInputSource(0x12)
return

获取你的显示器的输入源id

右击你的ahk脚本,使用Auto Hot Key打开运行。

按下win+z获取显示器当前输入源id:

在这里插入图片描述

15是十进制id,其16进制为0fH,我们更改脚本时参数要输入为0x0f

setMonitorInputSource(0x0f)

其他输入源的id我们可以手动切换显示器输入源,然后盲按win+z键获取id,接着切换回windows就可以拿到其他输入源id了。

编译成.exe可执行文件

打开Convert .ahk to .exe

在这里插入图片描述

选择你的ahk脚本,点击下方Convert即可编译成.exe可执行文件,可以在其他没有安装Auto Hot Key的电脑上直接运行。

在这里插入图片描述


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

相关文章

linux系统双显示器怎么设置复制,在 Linux 中配置双显示器

新加了一个显示器后,发现在 Linux 里的显示器位置和实际位置不符。本来我的主显示器 BENQ 在右边,而辅显示器 DELL 在左边,,但在 Linux 里,鼠标却要向右边移才能移到 DELL 显示器中,因此需要重新配置一下。…

linux ps el显示器,明基 BenQ EL2870U:适用于 PS4 Pro 的 4K 显示器

明基 EL2870U 显示器拥有 4K 分辨率,HDR 10 技术支持,1ms 的快速响应时间,适合连接 PS4 Pro 等设备玩游戏或者看电影。 外观设计 明基 EL2870U 显示器正面 明基 EL2870U 显示器侧面 画面质量 明基 EL2870U 采用 28 英寸的 TN 面板&#xff0c…

试用BENQ PD2710QC显示器

收到BENQ PD2710QC显示器试用申请通过的通知,上网查看了一下该款显示器,确实惊艳,有点颠覆我对显示器的印象,一直以为显示器只是作为电脑图像显示终端。但没想到PD2710QC可以将我们需要的其他功能集成到显示器底座,特别…

爱眼小能手!明基BL2480T显示器使用体验

明基BL2480T使用体验 给大家推荐一款十分全面的显示器,它能满足办公、娱乐、家用等绝大多数场景的需要,这款显示器就是明基BL2480T,我个人本身没有用过明基的产品,这次也是刚好有机会体验了一下明基这款显示器,然后就…

Hugging News #0602: Transformers Agents 介绍、大语言模型排行榜发布!

每一周,我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新,包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等,我们将其称之为「Hugging News」,本期 Hugging News 有哪些有趣的消息…

安卓手机烧内存卡(就是内存卡损坏)的补救办法

现在很多人都用安卓手机,但是放在安卓手机里的内存卡很容易损坏,特别是连接到电脑上没有安全弹出就拨掉手机或是数据线时,内存卡几乎肯定就要被烧掉(损坏掉),这时既便在手机中放入内存卡,但也没…

E1630加工散热孔:中兴路由器wifi6千兆E1630电信商企版Wi-Fi6路由器3000M全千兆

手贱在咸鱼上收了一台说是仅拆封试机的装宽带送的ZTE和中国电信共同冠名的E1630的路由器,测试了下,发现比较热(传说中的温热?),用什么办法降温呢? 由于我是把路由器挂在墙上,因此&a…

智慧厕所空气净化设备异味除臭杀菌更彻底

公厕虽小,但关系到民生大问题;臭气熏天、脏乱差的公共厕所,影响的不仅仅是人们如厕的满意舒适度,也不仅仅是造成公共卫生隐患,还会直接损害一座城市的形象品质。人来人往的公共厕所细菌多,需要经常进行杀菌…

基于GEC6818的个人超市购物系统

设计目标 1、把商品信息存放到文件中 2、程序启动时加载文件信息到数据结构中 3、根据用户选择的功能显示商店或购物车信息 4、根据用户点击的商品添加、删除商店或购物车内容 功能描述 1、侧边功能栏可以浏览商品以及购物车 2、浏览商品时选中商品自动加入购物车&#x…

小马哥----高仿移动定制版LTE4G yk858 H3H型号 6571芯片手机详细拆机主板图与开机界面图

yk858版本多 有个别的版本没办法使用常规方法root手机 此次展示的是移动定制版电池仓标贴 机型 主板标示贴为H3H 芯片为6571 此机型常规方法root不了 此机真实1080 1920分辨率 运存1G 4G内置内存 拆机多图展示

梅捷512G固态拆机+得一微YS9082HP量产教程+YS9082HP开卡工具

不得不说,现在的固态硬盘真越来越便宜了。想当初,买一块120G的sata固态硬盘都花了200多块钱,所以最近看到有爆料梅捷512G固态硬盘,结合各种优惠后能175元免邮费拿下,一不小心就买了(其实我并不是很需要它&a…

2019上海联通尾号789手机靓号多少钱一张?

号码--价格--最低消费(每张含话费100元) 186 2150 3789---200---5 186 2150 8789---200---5 186 2150 9789---200---5 186 2151 0789---200---5 186 2153 5789---200---5 186 2153 8789---200---5 186 2157 0789---200---5 186 2157 1789---200---5 186 …

一包通刷安卓9 晶晨S905L3/3B

免责申明: 本教程仅用于盒友之间的技术交流,本教程仅供学习交流,不用于任何商业用途!!! 升级有风险,操作需谨慎,由此引起的一切问题本人概不负责,风险自担! S…

拆长虹iho3000_(CA版)四川长虹iho-3000t晶晨s905l-b刷全网通系统教程可救砖头

大家好今天小编分享一个长虹IHO-3000 T网络机顶盒刷机固件下载及刷机方法; 中国电信3000t网络机顶盒也就是四川高安版盒子,为什么要说是高安版呢, 因为主板上有CA的logo标志,有CA则说明为高安版,此固件切勿乱刷 一不留神必变砖,今天小编发布这个为全量固件,包含整个镜像…

乐视手机型号和cpu

Le X500 乐视1S双4G版 屏幕5.5 CPU型号 联发科 Helio X10(MT6795T) Le X501 乐视1S双4G太子妃版 屏幕5.5 CPU型号 联发科 Helio X10(MT6795) Le X502 乐视1S双4G版 屏幕5.5 CPU型号…

计算机教室翻转电脑桌,学校翻转电脑桌钢架结构 智慧教室电脑桌 多功能台式电脑桌...

产品主要特点: 一、翻转电脑桌产品概述 翻转电脑桌是新生事物,初期因地域不同人们还习惯称呼它为:多媒体电脑桌、显示器隐藏机房电脑桌、培训电脑桌、学校机房电脑桌椅、实验室电脑桌、计算机教室电脑桌椅、电教室电脑桌、翻转式电脑桌、多媒…

国产机GSM系列手机常见芯片方案介绍

国产机GSM系列手机主要可分为MTK、ADI、TI、AGERE、PHILIPS、INFINEON、SKYWORKS、SPREADTRUM八大平台:一、MTK芯片 1. MTK芯片是MTK(台湾联发科技公司Media Tek .Inc)的系列产品,MTK的平台适用于中低端,基带比较集成。…

慧荣SM2263XT+4贴B16A开卡成功,附量产工具

朋友的电脑想升级NVMe盘,找我作一个(预算300元,要480G的) 我寻思这价格上不了太好的,于是把手里的货拿出来看了看,最终敲定了2263XT 焊接过程略(三封的IM B16白片) 焊接好上JMS583看…

工业加固手持三防平板电脑能条码采集

工厂生产制造环节进行严格高效的控制,加固手持三防平板电脑将会对物料信息进行收集,整理,标识,追溯。从工单排产计划,生产库存掌控,良率状况及时反馈,到与ERP对接,让管理者清楚掌握工…

【agv搬运机器人价格大全】agv智能搬运机器人多少钱-厂家揭晓

agv搬运机器人,通过近几年的飞速发展,agv搬运机器人价格已经降低到与传统人工叉车比较接近的水平,而人工成本却是每年不断上涨,这样看来,智能agv搬运机器人的优势已经日益明显,原来agv搬运机器人价格已经不…