返回列表 发帖

[原创] 实现启动notepad,输入ABC ,然后最小化

                      实现启动notepad,输入ABC ,然后最小化


注:写给新手,希望老鸟不要打击我!希望大家都学习一下vbs!呵呵。我会努力的!!


首先感谢一下,昨天一位仁兄给出的课题,感觉很不错!呵呵。。
现在我把代码再帖上,仔细给大家讲一下,希望大家都能明白什么原理

首先把问题再说一遍,
用vbs打开记事本,在记事本里输入ABC, 然后让脚本休息
2秒钟,最后最小化,如果您有其他的代码,请伏上来,我们共同研究哈。。。
下面是我写的代码:
Set ws = CreateObject("Wscript.Shell")  
ws.run "cmd /c start notepad.exe",vbhide
wscript.sleep 2000
ws.sendkeys "A"
ws.sendkeys "B"
ws.sendkeys "C"
wscript.sleep  1000
ws.sendkeys "%"
ws.sendkeys " "
ws.sendkeys "n"COPY


呵呵,我测试成功,在虚拟机也测试成功哈哈。
为了让新手更容易的上手,今天给大家讲一下代码的含义
set ws = createobject ("wscript.shell")
这句没有什么好讲的哈,就是套用固定格式,其中定义了ws,写vbs代码,这是固定
格式,所以这句话,一定要记住,ws可以改为其他任意字符,ws为
变量........

ws.run "cmd /c start notepad.exe",vbhide
这句的意思,就是执行命令notepad.exe,打开记事本,很简单吧?嘿嘿
vbhide就是隐藏那个跳出的黑框。。
因为执行的是批处理代码,没有vbhide ,将有个批处理的黑框出现。

wscript.sleep 2000 让vbs宿主脚本休息2秒钟哈,sleep就是休息
ws.sendkeys "A" 就是sendkeys了,就上发送按键,就是平常很流行的vbs模拟按键
这里发送了 A B C,
ws.sendkeys "%"  这里可能很多人看不懂哈,发送个%,其实不是拉!!
在vbs中sendkeys方法中 发送%就是发送了alt键
ws.sendkeys " " 这里发送了按键 空格,嘿嘿,其实呢sendkeys不能发送 space的,
" " 里面是个空字符,当vbs执行的时候,也执行这个空格,
ws.sendkeys "n" 这句话的意思就是发送了n

哈哈,代码就这么简单,也许到现在很多人都很疑惑哈!为什么发送
ws.sendkeys "%"
ws.sendkeys " "
ws.sendkeys "n"
就能最小化呢?呵呵,其实很简单,很容易理解,
我们可以用自己的手去操作,你就知道了,不用鼠标,也可以实现最小化的
首先,我们打开记事本,按下alt键
然后按下空格,在按下n,哈哈,竟然最小化了!!!呵呵,就是这个道理!!
容易理解吧??
嘿嘿, 就写到这了
也许有的地方我讲的不对,恳请大家批评指正,谢谢!!!

下面附上以下代码
可以在记事本里输入 “你是傻比啊”
然后最小化,呵呵,可以恶搞一下别人哈哈
Set ws = CreateObject("Wscript.Shell")  
ws.run "cmd /c start notepad.exe",vbhide
wscript.sleep 1500
ws.sendkeys  "^ "
ws.sendkeys "n"
ws.sendkeys "i"
ws.sendkeys " "
ws.sendkeys " "
wscript.sleep 1400
ws.sendkeys "s"
ws.sendkeys "h"
ws.sendkeys "i"
wscript.sleep 1500
ws.sendkeys " "
ws.sendkeys " "
ws.sendkeys "s"
ws.sendkeys "h"
ws.sendkeys "a"
wscript.sleep 1100
ws.sendkeys " "
ws.sendkeys "5"
ws.sendkeys "b"
ws.sendkeys "i"
wscript.sleep 1100
ws.sendkeys " "
ws.sendkeys " "
wscript.sleep 2300
ws.sendkeys "A"
ws.sendkeys "B"
ws.sendkeys "C"
wscript.sleep  3300
ws.sendkeys "%"
ws.sendkeys " "
ws.sendkeys "n"COPY

返回列表