猿问

您好,请问在vbs中的sendkeys函数如何输入引号?求大神帮忙看看~

vbs中的sendkeys函数如何输入引号?输入a.sendkeys("{"}")也不行
另外输入a.sendkeys("+a")怎样才能把Shift和a分开?
输入a.sendkeys("a3")怎样才能把a和3分开?
把Shift和a分开就是先按一下Shift,再按一下a,而不是按Shift+a
把a和3分开就是输入一个a,在输入一个3,而不是输入3个a 
我的表达有问题吗......
第一个问题,如果我要在记事本中输入msgbox"123"该用什么代码?
第二个问题,如果我要把输入法换成英文,再输入a,该用什么代码?
第三个问题,如果我要输入3a,该用什么代码?

偶然的你
浏览 608回答 3
3回答

子衿沉夜

————————————————————输入引号:————————————————————Set ws=CreateObject("wscript.shell")ws.Run "notepad.exe"wscript.sleep 100ws.SendKeys Chr(34)这里chr(34)就是一个双引号————————————————————后两个问题:————————————————————其实直接发送的效果就和你要的是一样的,你第二个问题是要得到一个“A”吧,而第三个问题中,直接ws.sendkeys "a3"即可,第二个问题直接ws.sendkeys "+a"即可补充:-------------------------------------------------Set ws=CreateObject("wscript.shell")ws.Run "notepad.exe"wscript.sleep 100ws.SendKeys "^+"'此句执行一次输入法切换'因为我这儿只设置了两种输入法,所以一次切换就到了英文'你根据你的系统的情况多执行几次,就可以了ws.SendKeys "msgbox " & Chr(34) & "123" & chr(34)'此句输入msgbox "123"到记事本上ws.sendkeys "a"ws.sendkeys "3a"

largeQ

这几个问题我分开来回答吧:前提:Set ws=CreateObject("wscript.shell")--------------------------------------------------------1. vbs中的sendkeys函数如何输入引号?如果我要在记事本中输入msgbox"123"该用什么代码?答:双引号的ASCII码是34,可用Chr(34)代替。因此,在记事本中输入msgbox"123",代码可以这样写:Set ws=CreateObject("wscript.shell")ws.Run "notepad.exe"wscript.sleep 200ws.SendKeys "msgbox" & Chr(34) & "123" & Chr(34)-----------------------------------------------------------2. 如何先发送shift,再发送a,而不是shift+a? 如果我要把输入法换成英文,再输入a,该用什么代码?答:shift是特殊功能键之一,单独使用没有意义,一般用于组合键。也没法通过sendkeys单独发送shift。通常在不同输入语言间切换(例如中英文输入语言切换,就是你的要求)用ctrl+shift,代码如下:ws.sendkeys "^+"这个取决于当前输入语言。假设只有中文、英文两种输入语言,如果当前输入语言是中文,那么就会切换到英文;反之亦然。在相同输入语言的不同输入法间切换(如搜狗拼音、五笔字型等输入法间切换)通常用ctrl+space,代码如下:ws.sendkeys "^ "-----------------------------------------------------------3. 如何把a和3分开就是输入一个3,再输入一个a,而不是输入3个a?如果我要输入3a,该用什么代码?答:输入3a,用 ws.sendkeys "3a"输入3个a,要使用大括号,用ws.sendkeys "{a 3}"

哔哔one

SendKeys 的参数是String 也就是说 你可以用Chr() 函数生成需要的变量如SendKeys Chr(&H22) 或 SendKeys Chr(34) '0x22 = 34 就是双引号对于此类操作( 键鼠相关,Hook) 建议使用API mouse_event , keybd_event
随时随地看视频慕课网APP
我要回答