wshShell.SendKeys模拟键盘操作
Dim wshShell
Set wshShell = CreateObject("Wscript.Shell")
wshShell.SendKeys "{ENTER}" '模拟键盘操作回车
1.基本键
一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母“x”,使用“WshShell.SendKeys "x"”即可。当然,也可直接发送多个按键指令,只需要将按键字符按顺序排列在一起即可,例如,要发送按键“happy”,可以使用“ WshShell.SendKeys "happy" ”。
2.特殊功能键
对于需要与Shift、Ctrl、Alt三个控制键组合的按键,SendKeys使用特殊字符来表示:
Shift---------WshShell.SendKeys "+"
Ctrl---------WshShell.SendKeys "^"
Alt---------WshShell.SendKeys "%" (注意:这样使用时,不用大括号括起这些特殊字符。)
由于“+”、“^”这些字符用来表示特殊的控制按键了,如何表示这些”字符”的按键呢?只要用大括号括住这些字符即可。例如: 要发送加号“+”,可使用“WshShell.SendKeys "{+}"”
另外对于一些不会生成字符的控制功能按键,也同样需要使用大括号括起来按键的名称。--如果发送是基本字符用“”括起来。
例如要发送回车键,需要用“ WshShell.SendKeys "{ENTER}" ”表示;
发送向下的方向键用“ Wshshell.SendKeys "{DOWN}" ”表示。
Space---------WshShell.SendKeys " "
Enter---------WshShell.SendKeys "{ENTER}"
←---------WshShell.SendKeys "{RIGHT}"
↑---------WshShell.SendKeys "{UP}"
F1---------WshShell.SendKeys "{F1}"
按键 代码
BACKSPACE {BACKSPACE}, {BS}, 或 {BKSP}
BREAK {BREAK}
CAPS LOCK {CAPSLOCK}
DEL or Delete {Delete} 或 {DEL}
DOWN ARROW {DOWN}
END {END}
ENTER {ENTER}或 ~
ESC {ESC}
HELP {HELP}
HOME {HOME}
INS or Insert {Insert} 或 {INS}
LEFT ARROW {LEFT}
NUM LOCK {NUMLOCK}
PAGE DOWN {PGDN}
PAGE UP {PGUP}
PRINT SCREEN {PRTSC}
RIGHT ARROW {RIGHT}
SCROLL LOCK {SCROLLLOCK}
TAB {TAB}
UP ARROW {UP}
F1 {F1}
F2 {F2}
F3 {F3}
F4 {F4}
F5 {F5}
F6 {F6}
F7 {F7}
F8 {F8}
F9 {F9}
F10 {F10}
Tips:如果需要发送多个重复的单字母按键,不必重复输入该字母,SendKeys允许使用简化格式进行描述,使用格式为“{按键 数字}”。例如要发送10个字母“x”,则输入“WshShell.SendKeys "{x 10}"”即可。
为了说明在按下其它按键时应同时按下 SHIFT、CTRL、及 ALT 的任意组合键,请把那些按键的码放在括号当中。例如,为了说明按下 E 与 C 的时候同时按下 SHIFT 键,请使用 "+(EC)"。为了说明在按下 E 的时候同时按下 SHIFT 键,但接着按 C 而不按 SHIFT,则使用 "+EC"。
实际应用举例: ----------------------------------- 按下F5刷新桌面
Dim WshShell,Path,i Set WshShell = Wscrīpt.CreateObject("Wscrīpt.Shell") WshShell.SendKeys "{F5}" ---------------------------------------------------- 电脑的自动重启
set WshShell = CreateObject("Wscrīpt.Shell") WshShell.SendKeys "^{ESC}u" WshShell.SendKeys "R" ---------------------------------------------------- 启动任务管理器
set WshShell = CreateObject("Wscrīpt.Shell") WshShell.SendKeys "^+{ESC}" ---------------------------------------------------- QQ消息连发
Dim WshShell Set WshShell= Wscrīpt.createObject("Wscrīpt.Shell") WshShell.AppActivate "bomb" for i=1 to 60 Wscrīpt.Sleep 800 WshShell.SendKeys "What do you say" WshShell.SendKeys i WshShell.SendKeys "%s" next ---------------------------------------------------- 自动到百度搜索歌曲:white flag
Dim WshShell,Path,i Set WshShell = Wscrīpt.CreateObject("Wscrīpt.Shell") WshShell.Run("IEXPLORE.EXE") Wscrīpt.Sleep 2000 WshShell.AppActivate "about:blank-Microsoft Internet Explorer" WshShell.SendKeys "+{TAB}" WshShell.SendKeys "http://mp3.baidu.com" Wscrīpt.Sleep 800 WshShell.SendKeys "{ENTER}" Wscrīpt.Sleep 3000 WshShell.SendKeys "white flag" Wscrīpt.Sleep 800 WshShell.SendKeys "{ENTER}" ---------------------------------------------------- 自动关机
Dim WshShell Set WshShell=Wscrīpt.CreateObject("Wscrīpt.Shell") Wscrīpt.Sleep 2000 WshShell.Run "shutdown -r -t 120" wscrīpt.sleep 6000 WshShell.Run "shutdown -a" ---------------------------------------------------- 在记事本中输入Happy Birthday!并保存为birth.txt
Dim WshShell Set WshShell=Wscrīpt.CreateObject("Wscrīpt.Shell") WshShell.Run "notepad" Wscrīpt.Sleep 1500 WshShell.AppActivate "无标题 - 记事本" WshShell.SendKeys "H" Wscrīpt.Sleep 500 WshShell.SendKeys "a" Wscrīpt.Sleep 500 WshShell.SendKeys "p" Wscrīpt.Sleep 500 WshShell.SendKeys "p" Wscrīpt.Sleep 500 WshShell.SendKeys "y" Wscrīpt.Sleep 500 WshShell.SendKeys " " Wscrīpt.Sleep 500 WshShell.SendKeys "B" Wscrīpt.Sleep 500 WshShell.SendKeys "i" Wscrīpt.Sleep 500 WshShell.SendKeys "r" Wscrīpt.Sleep 500 WshShell.SendKeys "t" Wscrīpt.Sleep 500 WshShell.SendKeys "h" Wscrīpt.Sleep 500 WshShell.SendKeys "d" Wscrīpt.Sleep 500 WshShell.SendKeys "a" Wscrīpt.Sleep 500 WshShell.SendKeys "y" Wscrīpt.Sleep 500 WshShell.SendKeys "!" Wscrīpt.Sleep 500 WshShell.SendKeys "%FS" Wscrīpt.Sleep 500 WshShell.SendKeys "b" Wscrīpt.Sleep 500 WshShell.SendKeys "i" Wscrīpt.Sleep 500 WshShell.SendKeys "r" Wscrīpt.Sleep 500 WshShell.SendKeys "t" Wscrīpt.Sleep 500 WshShell.SendKeys "h" Wscrīpt.Sleep 500 WshShell.SendKeys "%S" Wscrīpt.Sleep 500 WshShell.SendKeys "%FX" ---------------------------------------------------- 制作能自动定时存盘的记事本
'第一部分:定义变量和对象
Dim WshShell, AutoSaveTime, TXTFileName AutoSaveTime=300000 Set WshShell=Wscrīpt.CreateObject("Wscrīpt.Shell") TXTFileName=InputBox("请输入你要创建的文件名(不能用中文和纯数字):")
'第二部分:打开并激活记事本
WshShell.Run "notepad" Wscrīpt.Sleep 200 WshShell.AppActivate "无标题 - 记事本"
'第三部分:用输入的文件名存盘
WshShell.SendKeys "^s" Wscrīpt.Sleep 300 WshShell.SendKeys TXTFileName Wscrīpt.Sleep 300 WshShell.SendKeys "%s" Wscrīpt.Sleep AutoSaveTime '第四部分:自动定时存盘 While WshShell.AppActivate (TXTFileName)=True WshShell.SendKeys "^s" Wscrīpt.Sleep AutoSaveTime Wend Wscrīpt.Quit
----------------------------------------------------
自动死机o(∩_∩)o...
DIM WSHSHELL SET WSHSHELL=Wscrīpt.CreateOBJECT("Wscrīpt.SHELL") 'WSHSHELL.RUN " " 'Wscrīpt.SLEEP 1000 WSHSHELL.SENDKEYS "{ENTER}" 'Wscrīpt.SLEEP 1000 WSHSHELL.SENDKEYS "{ENTER}" 'Wscrīpt.SLEEP 1000 WSHSHELL.SENDKEYS "{ENTER}" 'Wscrīpt.SLEEP 1000 WSHSHELL.SENDKEYS "{ENTER}" 'Wscrīpt.SLEEP 1000 WSHSHELL.SENDKEYS "{ENTER}"
wshShell.SendKeys模拟键盘操作的更多相关文章
- firefox下载文件弹出框之终极解决方案-vbs模拟键盘操作
由于近期一直被firefox的保存文件弹出框困扰,摸索尝试过几种方法,已有的方法可以跑通但是对对效果不太满意,因此一直在寻找合适的解决办法. 最近发现了也可以通过VBS来处理弹出框,速度也不错,其原理 ...
- 【java+selenium3】模拟键盘操作 (十二)
一.键盘操作 用代码来模拟键盘的Enter或一系列的组合键,前面使用sendkeys()方法模拟键盘的输入,除此之外还可以模拟键盘组合键输入如下: 整理一些比较常用的键盘操作如下: sendKeys( ...
- Python+Selenium自动化-模拟键盘操作
Python+Selenium自动化-模拟键盘操作 0.导入键盘类Keys() selenium中的Keys()类提供了大部分的键盘操作方法:通过send_keys()方法来模拟键盘上的按键. # ...
- C# 模拟键盘操作--SendKey(),SendKeys()
模拟键盘输入就是使用以下2个语法实现的.SendKeys.Send(string keys); //模拟汉字(文本)输入SendKeys.SendWait(string keys); //模拟按键输 ...
- C# 模拟键盘操作SendKey(),SendKeys()
模拟键盘输入就是使用以下2个语法实现的. SendKeys.Send(string keys); //模拟汉字(文本)输入SendKeys.SendWait(string keys); //模拟按键 ...
- selenium模拟键盘操作
单键 /** * 模拟键盘回车事件 * @throws AWTException */ public void KeyEventEnter() throws AWTException { Robot ...
- Selenium WebDriver-actionchain模拟键盘操作
#encoding=utf-8 import unittest import time import chardet from selenium import webdriver from selen ...
- SendInput模拟键盘操作
#include <windows.h> int main() { HWND parentHwnd, childHwnd; INPUT input[4]; parentHwnd = Fin ...
- UI自动化测试(四)AutoIT工具使用和robot对象模拟键盘按键操作
AutoIT简介 AutoIt 目前最新是v3版本,这是一个使用类似BASIC脚本语言的免费软件,它设计用于Windows GUI(图形用户界面)中进行自动化操作.它利用模拟键盘按键,鼠标移动和窗口/ ...
随机推荐
- redis(4)事务
一.事务 一般来说,事务必须满足4个条件,也就是我们常说的ACID: 1)Atomicity 原子性:一个事务中的所有操作要么全部完成,要么全部不完成,不会结束在中间的某个环节.事务在执行过程中发生错 ...
- IDEA集成 SpringBoot+Mybaties 之 @Autowired注入报错
原因分析: 因为@Mapper注解是由ibates提供的,需要在application.yml里加上下图配置 以及在启动类入口加上 扫描你mapper接口所在的包 ,所以Spring容器是不认识这个注 ...
- hibernate下Session的获取方式
Session是应用程序与数据库之间的一个会话,其重要性不言而喻.初学Hibernate,使用SessionFactory,老老实实地打开事务,提交,回滚,关闭session. 1.直接通过Sessi ...
- js 密码 正则表达式
1. 代码 function checkPassword(str){ var reg1 = /[!@#$%^&*()_?<>{}]{1}/; var reg2 = /([a-zA- ...
- HTML5拖拽功能中 dataTransfer对象详解
有了HTML5,老板再也不用担心我们的上传了,再加上有拖拽上传是不是很酷.百度一下,有关HTML5拖拽上传的文章和实例不少,都缺不了一个至关重要的东东DataTransfer.但是详细介绍的不多,尤其 ...
- eclipse遇到的异常
1. Widget disposed too early for part com.kompakar.ehealth.ui.emr.mstr.medicaldocumentaudit.Medical ...
- 01_Mac下安装homebrew
参考:https://jingyan.baidu.com/album/fec7a1e5ec30341190b4e7e5.html?picindex=3 1.在打开的命令行工具中输入如下语句: ruby ...
- makefile 通配符了解% $@ $^ $<
把目录下所有文件都编译的命令. 1 all:$(subst .c,.o,$(wildcard *.c)) 2 3 %.o:%.c 4 gcc -o $@ $< 下面是几个特舒符号的意思: $@: ...
- python读写不同编码txt文件
以后整理规范 import os import codecs filenames=os.listdir(os.getcwd()) out=file("name.txt",& ...
- PHP 调用web service接口(.net开发的接口)
实例代码1: try { $this->soapClientObj = new SoapClient(self::URL . '?wsdl', array('connection_timeout ...