China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --

Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
DOS stands for freedom, openness and progress. Let us work hard, learn from the openness and GNU spirit of FreeDOS and Linux, and together build and grow a free GNU GPL world!

中国DOS联盟论坛
The time now is 2026-07-13 10:35
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [Discussion] Wonderful Chinese in VBS... View 5,038 Replies 19
Floor 16 Posted 2009-02-23 11:28 ·  中国 陕西 西安 电信
新手上路
Credits 6
Posts 10
Joined 2009-02-12 12:05
17-year member
UID 138628
Gender Male
Status Offline
So you found this out ah
Floor 17 Posted 2010-02-05 22:06 ·  中国 天津 电信
新手上路
Credits 8
Posts 33
Joined 2009-11-10 19:45
16-year member
UID 154524
Gender Male
Status Offline
Floor 18 Posted 2010-07-18 15:58 ·  中国 重庆 电信
新手上路
Credits 14
Posts 9
Joined 2010-01-15 11:13
16-year member
UID 158705
Gender Male
Status Offline
Awesome! Finally learned some new knowledge
Floor 19 Posted 2010-08-02 17:15 ·  中国 湖北 襄阳 电信
新手上路
Credits 12
Posts 12
Joined 2010-06-26 09:35
16-year member
UID 169536
Gender Male
Status Offline
Hehe, really interesting
Floor 20 Posted 2010-08-02 18:55 ·  中国 湖北 襄阳 电信
新手上路
Credits 12
Posts 12
Joined 2010-06-26 09:35
16-year member
UID 169536
Gender Male
Status Offline
As for what specific hexadecimal numbers represent in terms of functions, I found the answer on MSDN.

(http://msdn.microsoft.com/en-us/library/ms645540(VS.85).aspx)

The following is an excerpt:

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 is My Computer
B7 Application 2 is Calculator

In order to implement these functions more conveniently, I compiled a simple VBS


a=chr(&h88b5)
'msgbox "d" & a & "d"
CreateObject("wscript.shell").Sendkeys a


A simple explanation
a=chr(&h88b5)
' "&h" means the following number is a hexadecimal number, b5 represents Media key, that is, media player (such as千千静听). Why add 88 in front? After adding 88, there are two bytes, which form a Chinese character (in GBK). Because if the character represented by a is not a truly meaningful character (such as ASCII characters and Chinese characters), SendKeys will not work. You can try it. As for why 88 is chosen, because it is written in MSDN that (0x88-8F) Unassigned, and the characters starting with 88 can form meaningful GBK Chinese characters.
'msgbox "d" & a & "d"
' can test whether a is a meaningful character
CreateObject("wscript.shell").Sendkeys a
' call SendKeys method.

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