中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [1] [2] »
作者:
标题: [讨论]VBS中奇妙的中文…… 上一主题 | 下一主题
xxcvb
新手上路





积分 6
发帖 10
注册 2009-2-12
状态 离线
『第 16 楼』:  

这都被你发现了啊

2009-2-23 11:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
echoair
新手上路





积分 8
发帖 33
注册 2009-11-10
状态 离线
『第 17 楼』:  

太厉害了…

2010-2-5 22:06
查看资料  发送邮件  发短消息 网志  OICQ (39820396)  编辑帖子  回复  引用回复
todayambition
新手上路





积分 14
发帖 9
注册 2010-1-15
状态 离线
『第 18 楼』:  

强啊    终于又知道了点新的知识

2010-7-18 15:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zsc37201
新手上路





积分 12
发帖 12
注册 2010-6-26
状态 离线
『第 19 楼』:  

呵呵,真有意思

2010-8-2 17:15
查看资料  发短消息 网志   编辑帖子  回复  引用回复
zsc37201
新手上路





积分 12
发帖 12
注册 2010-6-26
状态 离线
『第 20 楼』:  

至于具体十六进制数代表什么功能,我在MSDN找到了答案。
http://msdn.microsoft.com/en-us/library/ms645540(VS.85).aspx

下面摘录一段:

VK_BROWSER_BACK (0xA6)
Windows 2000/XP: Browser Back key

VK_BROWSER_FORWARD (0xA7)
Windows 2000/XP: Browser Forward key

VK_BROWSER_REFRESH (0xA8)
Windows 2000/XP: Browser Refresh key

VK_BROWSER_STOP (0xA9)
Windows 2000/XP: Browser Stop key

VK_BROWSER_SEARCH (0xAA)
Windows 2000/XP: Browser Search key

VK_BROWSER_FAVORITES (0xAB)
Windows 2000/XP: Browser Favorites key

VK_BROWSER_HOME (0xAC)
Windows 2000/XP: Browser Start and Home key

VK_VOLUME_MUTE (0xAD)
Windows 2000/XP: Volume Mute key

VK_VOLUME_DOWN (0xAE)
Windows 2000/XP: Volume Down key

VK_VOLUME_UP (0xAF)
Windows 2000/XP: Volume Up key

VK_MEDIA_NEXT_TRACK (0xB0)
Windows 2000/XP: Next Track key

VK_MEDIA_PREV_TRACK (0xB1)
Windows 2000/XP: Previous Track key

VK_MEDIA_STOP (0xB2)
Windows 2000/XP: Stop Media key

VK_MEDIA_PLAY_PAUSE (0xB3)
Windows 2000/XP: Play/Pause Media key

VK_LAUNCH_MAIL (0xB4)
Windows 2000/XP: Start Mail key

VK_LAUNCH_MEDIA_SELECT (0xB5)
Windows 2000/XP: Select Media key

VK_LAUNCH_APP1 (0xB6)
Windows 2000/XP: Start Application 1 key

VK_LAUNCH_APP2 (0xB7)
Windows 2000/XP: Start Application 2 key

B6 Application 1 就是我的电脑
B7 Application 2 就是计算器

为了更方便的实现这些功能,我编了一段简单的vbs
a=chr(&h88b5)
'msgbox "d" & a & "d"
CreateObject("wscript.shell").Sendkeys a
简单的解释一下
a=chr(&h88b5)
'“&h”表示后面的数是十六进制数,b5代表Media key,也就是媒体播放器(比如千千静听),为什么前面要加88呢?加了88以后,有两个字节,也就构成了一个汉字(是GBK里的),因为a代表的字符若不是真正有意义的字符(比如ASCII字符和汉字),sendkeys就不会起作用,大家可以试一下。至于为什么选择88,因为在msdn里写着(0x88-8F)Unassigned,同时88为开头的字符可以组成有意义的GBK汉字。
'msgbox "d" & a & "d"
'可以测试a是不是有意义的字符
CreateObject("wscript.shell").Sendkeys a
'调用SendKeys方法。

[ Last edited by zsc37201 on 2010-8-2 at 19:38 ]

2010-8-2 18:55
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: