因为平时工作会有很多的项目对接,但是每一个项目里面对接的人群都不一样,会打开很多虚拟桌面在微信里把不同的人的聊天窗口独立出来,分布到不同的项目的虚拟桌面,但是和一个窗口的人对话完之后,经常习惯性的就按了一下 esc 键,或者 Alt+F,把窗口关闭掉了。
然后每次又得到对应的窗口,把微信聊天窗口独立出来。
求助大佬可以实现一个动作,把当前指定锁定,不允许 esc 退出或者 Alt+F4关闭。
设置ESC键微信白名单扩展热键或快捷键,这样ESC键的功能就被占用了。Ctrl+F能关闭吗?
感谢大神指正。不是Crtl+F,是Alt+F4
这个方案可行倒是可行
主要是这样一操作的话,微信主窗口也不能用 esc 退出了
我想独立窗口不能用 esc 退出,主窗口还可以用 esc 退出
在动作里判断是否独立窗口,如果不是,就关闭窗口。
用autohotkey可以做到,给你提供下思路:
写个ahk脚本,针对微信程序写一个esc热键(ctrl+F同理),同时设置一个列表变量(黑名单)存放需要阻止关闭的窗口id,
热键触发后获取当前窗口的id,如果该id位于列表变量(即黑名单)里,则啥也不干,否则 重新发送esc键
然后就是如何将指定窗口添加到黑名单里,两个方法:
1 依然使用autohotkey 热键来添加, 触发后获取当前窗口id,然后添加到黑名单变量
2 ,改用quicker动作来添加,原理是quicker触发动作后将窗口id通过消息的形式发送到autohotkey, 同时auotohotkey脚本里设置一个监听消息的函数,当收到消息后将消息中的窗口id添加到黑名单变量里
方法2有点复杂,但是可行的, 推荐方法1
quicker也可以直接实现的吧,直接把esc变成快捷键,按键触发动作,获取前台窗口程序名什么的,只要是什么什么就让esc无效,或者让按键生效
我之前试的是"热键联动",设置ESC触发之后,它能触发quicker动作,但它不能阻止白名单程序触发esc; 试了你说的"动作快捷键",它可以阻止白名单程序触发esc, 感谢! 不过我在设置alt+F4作为触发键时,quicker提示"注册快捷键失败:Alt+F4", 我想可能是权限不够,于是又以管理员身份启动quicker,结果又提示"开启APP网络服务端口失败。通常每个套接字地址(协议/网络地址/端口)只允许使用一次。" ,你试试能不能注册alt+F4
alt是功能键,应该是没法用任何方法注册为快捷键的
autohotkey可以注册alt+F4,甚至win键组合键都能注册的😀
写好了,试试看,成功或者失败都给个反馈 https://getquicker.net/Sharedaction?code=3584419d-0eda-4ef3-4ff9-08dcf7c36419
非常感谢,我刚才已经试过了这个autohotkey,以下总结了几个问题:
1.当把“窗口 a”添加到黑名单,这个时候用鼠标移动到窗口右上角的关闭按钮进行点击关闭。查看黑名单的时候,显示“窗口 a”----(无效)
这时候重新把重口 a 独立出来,查看黑名单会显示有两个窗口 a,其中老的那个是“无效”。这个应该是当窗口 a 关闭,重新打开以后,句柄就发生了变化。
其实就算重新加入黑名单也无妨,所以可以直接设置无效的句柄的窗口直接剔除黑名单
2.回来黑名单里面的窗口对其进行关闭的时候,会显示一秒的倒数计时,可否将这个倒数计时取消?
3.可以将 QQ 的窗口也加入其中吗?
1.黑名单是针对窗口句柄的,这是不会重复的,如果针对窗口标题,那么聊天窗口打开的其它窗口(比如聊天记录窗口)也会被阻止关闭,那样就得通过点击X按钮来关闭了,这就不方便了; 所以只针对特定窗口的句柄; 无效的句柄确实是因为关闭窗口再次打开后句柄id变了, 移除不移除失效的句柄都不影响,所以没移除
2. 第50行改成 cnt:=0
3 可以,把脚本里 example.exe 改成 qq.exe即可, 脚本使用的快捷键ctrl+B和ctrl+T可能会和qq冲突,
你可以改成其它的,其中^表示ctrl,+表示shift,!表示alt,所以^+!B就表示ctrl+shift+alt+B;
修饰键的顺序无所谓,所以也可以写成!+^B
cnt:=0,直接没办法用 esc 退出,或者用 alt 加 f4关闭了
还是没办法秒关呀
cnt:=1,e sc 退出和 alt 加 f4关闭倒数计时时间变成了0.5秒
更新了,你再试一下
现在BUG更多了=.=
1.按 alt 加 f4都直接没法关闭窗口了
2.在主窗口使用 esc 键,会把聊天窗口进行切换,多按几次 esc,多往下切换几个之后,才可以进行 esc 退出
我这测试没问题的,你是不是没把之前的脚本退出? 你自己改键了吗?
退出了的,早上过来在公司电脑上运行也是这个样子
你试试重启电脑,关闭无关的程序,只启动微信和autohotkey,看看还有没有问题; 如果还有,我给你远程看看,你下载个todesk,发我链接
现在已经可以了,两台电脑都可以了
谢谢大神
找到之前运行出问题的原因了吗
也不知道是什么原因,反正现在没问题了
设置ESC键微信白名单扩展热键或快捷键,这样ESC键的功能就被占用了。Ctrl+F能关闭吗?
感谢大神指正。不是Crtl+F,是Alt+F4
这个方案可行倒是可行
主要是这样一操作的话,微信主窗口也不能用 esc 退出了
我想独立窗口不能用 esc 退出,主窗口还可以用 esc 退出
在动作里判断是否独立窗口,如果不是,就关闭窗口。