无忧启动论坛

标题: 【已解决】检测SCROLL键是否按下bat或vbs,谢谢 [打印本页]

作者: yyz2191958    时间: 2023-6-20 13:09
标题: 【已解决】检测SCROLL键是否按下bat或vbs,谢谢
本帖最后由 yyz2191958 于 2023-6-20 15:48 编辑

完美解决:


键盘灯.ahk:
;【检测SCROLL键是否按下,如果没有,就按一下】

#SingleInstance force
if not GetKeyState("ScrollLock", "T"){
    SetScrollLockState, AlwaysOn
    exitapp
}





键盘灯.rar

197.31 KB, 下载次数: 15, 下载积分: 无忧币 -2


作者: batche    时间: 2023-6-20 13:49
ahk
  1. #SingleInstance force
  2. if not GetKeyState("ScrollLock", "T"){
  3.     SetCapsLockState, AlwaysOn
  4. }
复制代码

作者: yyz2191958    时间: 2023-6-20 13:52
batche 发表于 2023-6-20 13:49
ahk

我试一试先 谢谢
作者: yyz2191958    时间: 2023-6-20 14:02
batche 发表于 2023-6-20 13:49
ahk

我试了一下,是不是要修改为下面的代码?

#SingleInstance force
if not GetKeyState("ScrollLock", "T"){
    SetScrollLockState, AlwaysOn
}
作者: yyz2191958    时间: 2023-6-20 14:23
batche 发表于 2023-6-20 13:49
ahk

能不能修改一下:使得开灯以后自动退出?
作者: conlin888    时间: 2023-6-20 14:33
yyz2191958 发表于 2023-6-20 14:23
能不能修改一下:使得开灯以后自动退出?

使用pecmd:
按了scroll键,返回1, 否则返回0.

  1. for /f "delims=" %%i in ('call pecmd.exe "team wait 0|ifex $%%&presskey.hex%%=0x91,writ -,,1!writ -,,0"') do @echo %%i
复制代码




作者: yyz2191958    时间: 2023-6-20 14:36
conlin888 发表于 2023-6-20 14:33
使用pecmd:
按了scroll键,返回1, 否则返回0.

我试一试 谢谢
作者: yyz2191958    时间: 2023-6-20 14:38
conlin888 发表于 2023-6-20 14:33
使用pecmd:
按了scroll键,返回1, 否则返回0.

没有成功
作者: conlin888    时间: 2023-6-20 14:40
yyz2191958 发表于 2023-6-20 14:38
没有成功

批处理文件和pecmd.exe在同一目录下
作者: conlin888    时间: 2023-6-20 14:52
批处理文件:
未按下scroll时, 按下scroll键, 否则什么也不做.

  1. pecmd.exe "Team wait -scanall &v|mstr * &v=<146>&v|calc &v=%%&v%%&1|ifex $%%&v%%=0,send 0x91_,0x91^"
复制代码




作者: yyz2191958    时间: 2023-6-20 14:52
conlin888 发表于 2023-6-20 14:40
批处理文件和pecmd.exe在同一目录下

X:\Windows\System32>for /F "delims=" %i in ('call pecmd.exe "team wait 0|ifex $%&presskey.hex%=0x91,writ -,,1!writ -,,0"') do @echo %i
作者: conlin888    时间: 2023-6-20 14:56
yyz2191958 发表于 2023-6-20 14:52
X:\Windows\System32>for /F "delims=" %i in ('call pecmd.exe "team wait 0|ifex $%&presskey.hex%=0x9 ...

批处理运行以下语句, 满足你的要求:

pecmd.exe "Team wait -scanall &&v|mstr * &v=<146>&v|calc &v=%%&v%%&1|ifex $%%&v%%=0,send 0x91_,0x91^"
作者: sunsir    时间: 2023-6-20 14:57
看看
作者: batche    时间: 2023-6-20 15:05
不好意思,我回复有限制
  1. #SingleInstance force
  2. if not GetKeyState("ScrollLock", "T"){
  3.     SetScrollLockState, AlwaysOn
  4.     exitapp
  5. }
复制代码

作者: yyz2191958    时间: 2023-6-20 15:24
batche 发表于 2023-6-20 15:05
不好意思,我回复有限制

我试一试 谢谢
作者: conlin888    时间: 2023-6-20 15:29
yyz2191958 发表于 2023-6-20 14:38
没有成功

如果在PE下使用,可在PECMD.ini末尾加上, 即可保证scroll键长亮:

Team wait -scanall &&v|mstr * &v=<146>&v|calc &v=%&v%&1|ifex $%&v%=0,send 0x91_,0x91^
作者: yyz2191958    时间: 2023-6-20 15:29
batche 发表于 2023-6-20 15:05
不好意思,我回复有限制

完美解决  再次感谢
作者: yyz2191958    时间: 2023-6-20 15:33
conlin888 发表于 2023-6-20 15:29
如果在PE下使用,可在PECMD.ini末尾加上, 即可保证scroll键长亮:

Team wait -scanall &&v|mstr * &v=&v ...

非常感谢
作者: dx163    时间: 2023-6-21 15:50
答复的都是高人
作者: yyz2191958    时间: 2023-6-22 23:15
conlin888 发表于 2023-6-20 15:29
如果在PE下使用,可在PECMD.ini末尾加上, 即可保证scroll键长亮:

Team wait -scanall &&v|mstr * &v=&v ...

我需要在 PE下 和 正常系统下 通用
作者: conlin888    时间: 2023-6-22 23:47
yyz2191958 发表于 2023-6-22 23:15
我需要在 PE下 和 正常系统下 通用

正常系统得自己准备个PECMD.exe,

pecmd.exe "Team wait -scanall &&v|mstr * &v=<146>&v|calc &v=%%&v%%&1|ifex $%%&v%%=0,send 0x91_,0x91^"
作者: yyz2191958    时间: 2023-6-23 07:14
conlin888 发表于 2023-6-22 23:47
正常系统得自己准备个PECMD.exe,

pecmd.exe "Team wait -scanall &&v|mstr * &v=&v|calc &v=%%&v%%&1| ...

我试一试 谢谢




欢迎光临 无忧启动论坛 (http://wuyou.net./) Powered by Discuz! X3.3