怎么使用SendK娣定撰钠eys的vbs方法来输入中文字符
首先我们看一个输入字母的例子:禊诬娱飑p>
sets=WScript.CreateObject("WScript.Shell")
app=s.Run("C:windowsotepad.exe")
code="biweilun"
WScript.Sleep1000
s.AppActivateapp
s.SendKeyscode
Wscript.quit
这段vbs作用是打开一个记事本,然后把"biweilun"这串字符输入进去,可以把code参数换成chr(97),那么你会发现自动输入到记事本里面的是一个"a"字符。code参数的值换成一个chr(一个汉字的ASCII码)是不行。
现在可以利用clip.exe这个小程序,它只在Win2003下才有,WinXP是没有的,xp下不能实现后台Windows写剪贴板的DOS命令,将Win2003中的Clip.exe下载后解压缩,把得到的clip.exe复制到%systemroot%system32文件夹下面即可。现在vbs用SendKeys输入中文字符的问题得以完美解决了,前提是有clip.exe的支撑。
代码如下:
复制代码代码如下:
Setwshobj=WScript.CreateObject("WScript.Shell")
code="你想输入的中文"
wshobj.Run"cmd.exe/cecho"&code&"|clip.exe",vbHide
app=wshobj.Run("C:windowsotepad2.exe")
WScript.Sleep1000
wshobj.AppActivateapp
wshobj.SendKeys"^v"
Wscript.Quit