标题: [问题求助] vbs在设置快捷方式的快捷键时如何引用非字母数字符号如=-,/ [打印本页]
作者: sunvi 时间: 2021-2-1 17:40 标题: vbs在设置快捷方式的快捷键时如何引用非字母数字符号如=-,/
代码如下(运行可以):- set WshShell=Wscript.CreateObject("Wscript.Shell")
- set oShellLink=WshShell.CreateShortcut("C:\56.lnk")
- oShellLink.Hotkey="Ctrl+Alt+8"
- oShellLink.Save
复制代码
代码如下(想用Ctrl+Alt+一个等号来做快捷键,但运行不可以):- set WshShell=Wscript.CreateObject("Wscript.Shell")
- set oShellLink=WshShell.CreateShortcut("C:\56.lnk")
- oShellLink.Hotkey="Ctrl+Alt+="
- oShellLink.Save
复制代码
作者: WHY 时间: 2021-2-1 21:30
- set WshShell=CreateObject("Wscript.Shell")
- set oShellLink=WshShell.CreateShortcut("D:\56.lnk")
- oShellLink.Save
- Set oShell = CreateObject("Shell.Application")
- Set oLink = oShell.NameSpace("D:\").ParseName("56.lnk").GetLink
- oLink.HotKey = 1024 + 512 + 187
- oLink.Save
复制代码
0000011010111011
按照巨硬的Shell.Application文档说明,从右往左数,低8位(187)为"="的虚拟键码位,第9、10、11位分别为 shift、ctrl、alt 码位
作者: sunvi 时间: 2021-2-2 11:54
本帖最后由 sunvi 于 2021-2-2 19:18 编辑
感谢2楼的代码,运行可以。
昨晚请教了本论坛大佬czjt1234,也得以解决,他的代码如下,运行可以,共勉:
Set oShell = CreateObject("Shell.Application")
Set oShellLinkObject = oShell.NameSpace("C:\").ParseName("56.lnk").GetLink
oShellLinkObject.Hotkey = &H0EBB
oShellLinkObject.Save()
在此感谢大佬czjt1234,谢谢~
作者: sunvi 时间: 2021-2-2 11:57
有个图片解释:
作者: sunvi 时间: 2021-2-2 19:30
参照以上两位大佬的代码,经过验证代码也可以如下:
Set oShell = CreateObject("Shell.Application")
Set oShellLinkObject = oShell.NameSpace("C:\").ParseName("56.lnk").GetLink
oShellLinkObject.Hotkey = 1024 + 512 + 187
oShellLinkObject.Save()
作者: WHY 时间: 2021-2-2 20:42
参考:
https://docs.microsoft.com/en-us ... lllinkobject-hotkey
https://docs.microsoft.com/en-us ... v/virtual-key-codes
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |