标题: [已解决]VBS实现“切换输入法”为什么没作用? [打印本页]
作者: wc726842270 时间: 2010-12-10 00:12 标题: [已解决]VBS实现“切换输入法”为什么没作用?
- Set object=CreateObject("wscript.shell")
- object.run "notepad"
- object.appactivate "无标题-记事本"
- WScript.Sleep 3000
- object.sendkeys "+(^)"
- WScript.Sleep 300
- object.sendkeys "+(^)"
- WScript.Sleep 300
- object.sendkeys "+(^)"
- WScript.Sleep 1000
- object.sendkeys "smq"
- object.SendKeys "{enter}"
复制代码
本想切换个输入法,试一下输入汉字,但不知道为什么不成功
[ 本帖最后由 wc726842270 于 2010-12-12 00:33 编辑 ]
作者: wc726842270 时间: 2010-12-10 01:36
刚才查了一下,实在没找到空格的输入法,想了解一下SENDKEYS能不能输出汉字呢
作者: broly 时间: 2010-12-10 21:40
SENDKEYS不能输入汉字
作者: wc726842270 时间: 2010-12-11 23:21
唉,看来结果有些让人失忘啊,不过切换输入法确实是object.sendkeys "+(^)"为什么也没反应呢。不能是命令出错了吧!同样感谢Broly的指导。看来只能在失忘中结贴了
[ 本帖最后由 wc726842270 于 2010-12-12 00:32 编辑 ]
作者: broly 时间: 2010-12-12 12:28 标题: 回复 4楼 的帖子
object.sendkeys "+(^)" 看上去没有问题
我测试也可以用
没空格的按键,你可以转换一下自己的思路:
比如你在拼音下输入 nihaoma
那么一般第一个选择就是 “你好吗”
平常你是用空格按键的,但VBS里你不可以用
你可用 obj.sendkeys “1”
那样起到同样的效果
作者: zz100001 时间: 2010-12-12 21:37
系统默认的是 CTRL+SHIFT,而不是SHIFT+CTRL。
既然没解决,为什么要”在失忘中结贴”呢?
作者: wc726842270 时间: 2010-12-14 00:32
RE 5 如果能切换过去的话,应该是没问题的
RC 6 关键是本人有些急了些,另外VBS关注的人太少了
空格的问题已经解决object.sendkeys " "
即可
[ 本帖最后由 wc726842270 于 2010-12-14 02:40 编辑 ]
作者: powerbat 时间: 2010-12-14 23:28
SendKeys是很不保险的,不仅有些键发不出来(比如最让人关注的PrintScreen),还得依赖于窗口焦点问题,这是很致命的缺点。想发送汉字还得依赖安装的输入法。所以不到万不得以,尽量不要用它。
比如楼主的问题可以创建一个InternetExplorer.Application来代替记事本,还可以做出很漂亮的效果。
PS:
发送空格竟然也算问题?学vbs连《Windows 脚本技术》(script56.chm)都不看?
注意 要发送空格,则请发送字符串 " "。
作者: wc726842270 时间: 2010-12-20 09:01 标题: 回复 8楼 的帖子
谢谢你的推荐,这几天看了一部份。确实是相当不错的书,不过就是没有TXT的,没办法,用了一晚上的时间转化了一部份,但还是有部份错误.
对于InternetExplorer.Application这个了解的,也只是出初(只停留在网页的打开上),我想等我看完这本书会有很大的提高
[ 本帖最后由 wc726842270 于 2010-12-20 09:11 编辑 ]
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |