批处理是不行的 用VBS 很简单 例子如下
Set objShell = CreateObject(“Wscript.Shell”)
do
WScript.Sleep 3000
objShell.SendKeys “{F5}”
WScript.Sleep 3000
objShell.SendKeys “{F5}”
loop
使用 SendKeys 方法可以将键击发送到无自动化界面的应用程序中。多数键盘字符都可用一个键击表示。某些键盘字符由多个键击组合而成(例如,CTRL+SHIFT+HOME)。要发送单个键盘字符,请将字符本身作为 string 参数发送。例如,要发送字母 x,则请发送 string 参数 “x”。
可使用 SendKeys 同时发送多个键击。为此,可将每个键击按顺序排列在一起,以此来创建表示一系列键击的复合字符串参数。例如,要发送键击 a、b 和 c,则需要发送字符串参数 “abc” 。SendKeys 方法将某些字符用作字符的修饰符(而不使用其本身的含义)。这组特殊的字符可包括圆括号、中括号、大括号,以及:
加号 “+”
插入记号 “^”
百分号 “%”
和“非”符号 “~”
用大括号 “{}” 括起这些字符可以发送它们。例如,要发送加号,请使用字符串参数 “{+}”。SendKeys中使用的中括号 “[ ]” 无任何特殊含义,但是必须把它们括在大括号中,以便容纳确实要赋予其特殊含义的应用程序(例如,对于动态数据交换 (DDE) 就是这样)。
要发送左中括号字符,请发送字符串参数 “{[}”;要发送右中括号字符,请发送字符串参数 “{]}”。
要发送左大括号字符,请发送字符串参数 “{{}”;要发送右大括号字符,请发送字符串参数 “{}}”。
某些键击不生成字符(如 ENTER 和 TAB)。某些键击表示操作(如 BACKSPACE 和 BREAK)。要发送这些类型的键击,请发送下表中列出的参数:
空格键 " "
退格键 {BACKSPACE} 或 {BS} 或 {BKSP}
BREAK {BREAK}
DELETE {DELETE} 或 {DEL}
向下键 {DOWN}
向上键 {UP}
向左键 {LEFT}
向右键 {RIGHT}
END {END}
ENTER {ENTER} 或 ~
ESC {ESC}
TAB {TAB}
CAPS LOCK {CAPSLOCK}
HELP {HELP}
HOME {HOME}
INSERT {INSERT} 或 {INS}
NUM LOCK {NUMLOCK}
PAGE DOWN {PGDN}
PAGE UP {PGUP}
PRINT SCREEN {PRTSC}
SCROLL LOCK {SCROLLLOCK}
F1 {F1}
F2 {F2}
F3 {F3}
F4 {F4}
F5 {F5}
F6 {F6}
F7 {F7}
F8 {F8}
F9 {F9}
F10 {F10}
F11 {F11}
F12 {F12}
要发送由常规键击和 SHIFT、CTRL 或 ALT 组合而成的键盘字符,请创建表示该键击组合的复合字符串参数。可通过在常规键击之前添加一个或多个以下特殊字符来完成上述操作:
SHIFT +
CTRL ^
ALT %
注意:这样使用时,不用大括号括起这些特殊字符。
要指定在按下多个其他键时,按下 SHIFT、CTRL 和 ALT 的组合,请创建复合字符串参数,用括号括起其中的组合键。例如,要发送的组合键指定:
如果在按 e 和 c 的同时按 SHIFT 键,则发送字符串参数 “+(ec)”。
如果在按 e 时只按 c(而不按 SHIFT),则发送字符串参数 “+ec”。
可使用 SendKeys 方法发送一种在一行内重复按键的键击。为此,要创建复合字符串参数,以指定要重复的键击,并在其后指定重复次数。可使用 {键击 数字} 形式的复合字符串参数来完成上述操作。例如,如果要发送 10 次 “x”,则需要发送字符串参数 “{x 10}”。请确保在键击和数字之间有一个空格。
注意:只可以发送重复按一个键的键击。例如,可以发送 10 次 “x”,但不可发送 10 次 “Ctrl+x”。
注意:不能向应用程序发送 PRINT SCREEN 键 {PRTSC}。
例子1:关机脚本 (模拟按键为:Ctrl + Esc、u、u )
把以下代码复制至记事本,另存为 off.vbs
set WshShell = CreateObject(“WScript.Shell”)
WshShell.SendKeys “^{ESC}uu”
例子2:重启脚本 (模拟按键为:Ctrl + Esc、u、r )
把以下代码复制至记事本,另存为 reboot.vbs
set WshShell = CreateObject(“WScript.Shell”)
WshShell.SendKeys “^{ESC}ur”
例子3:切换输入法 (模拟同时按下:Shift Ctrl )
set WshShell = CreateObject(“WScript.Shell”)
WshShell.SendKeys “+(^)”
例子4:输入 cn-dos.net! 至记事本并保存为 CnDos.txt
Dim WshShell
Set WshShell=WScript.CreateObject(“WScript.Shell”)
WshShell.Run “notepad”
WScript.Sleep 1500
WshShell.AppActivate “无标题 - 记事本”
WshShell.SendKeys “c”
WScript.Sleep 200
WshShell.SendKeys “n”
WScript.Sleep 200
WshShell.SendKeys “-”
WScript.Sleep 200
WshShell.SendKeys “d”
WScript.Sleep 200
WshShell.SendKeys “o”
WScript.Sleep 200
WshShell.SendKeys “s”
WScript.Sleep 200
WshShell.SendKeys “.”
WScript.Sleep 200
WshShell.SendKeys “n”
WScript.Sleep 200
WshShell.SendKeys “e”
WScript.Sleep 200
WshShell.SendKeys “t”
WScript.Sleep 200
WshShell.SendKeys “!”
WScript.Sleep 200
WshShell.SendKeys “%FS”
WScript.Sleep 500
WshShell.SendKeys “C”
WScript.Sleep 200
WshShell.SendKeys “n”
WScript.Sleep 200
WshShell.SendKeys “D”
WScript.Sleep 200
WshShell.SendKeys “o”
WScript.Sleep 200
WshShell.SendKeys “s”
WScript.Sleep 200
WshShell.SendKeys “%S”
WScript.Sleep 500
WshShell.SendKeys “%FX”
例子5:自动定时存盘的记事本(此脚本来自网上)
'第一部分:定义变量和对象
Dim WshShell, AutoSaveTime, TXTFileName
AutoSaveTime=(1000601) '自动存盘时间为1分钟
Set WshShell=WScript.CreateObject(“WScript.Shell”)
TXTFileName=InputBox(“给文本起名(不能用中文和纯数字):”)
'第二部分:打开并激活记事本
WshShell.Run “notepad”
WScript.Sleep 200
WshShell.AppActivate “无标题 - 记事本”
'第三部分:用输入的文件名存盘
WshShell.SendKeys “^s”
WScript.Sleep 300
WshShell.SendKeys TXTFileName
WScript.Sleep 300
WshShell.SendKeys “%s”
WScript.Sleep AutoSaveTime
'第四部分:自动定时存盘
While WshShell.AppActivate (TXTFileName)=True
WshShell.SendKeys “^s”
WScript.Sleep AutoSaveTime
Wend
WScript.Quit
例子:
set objShell = CreateObject(“Wscript.Shell”)
strCommandLine = “psetup755281.exe” '启动安装程序
objShell.Run(strCommandLine)
set WshShell = CreateObject(“WScript.Shell”)
WScript.Sleep 2000 '延时3秒
WshShell.SendKeys “{ENTER}” '模拟按下回车键执行下一步
WScript.Sleep 300 '延时3秒
WshShell.SendKeys “{ENTER}” '模拟按下回车键执行下一步
WScript.Sleep 300 '延时3秒
WshShell.SendKeys “{ENTER}” '模拟按下回车键执行下一步
WScript.Sleep 5200 '延时3秒
WshShell.SendKeys “{ENTER}” '模拟按下回车键执行下一步
WScript.Sleep 300 '延时3秒
WshShell.SendKeys “{ENTER}” '模拟按下回车键执行下一步
WScript.Sleep 300 '延时3秒
WshShell.SendKeys “{ENTER}” '模拟按下回车键执行下一步
WScript.Sleep 200
WshShell.SendKeys " " '模拟按下空格键去除安装百度超级搜霸一行前的√号
WScript.Sleep 100
WshShell.SendKeys “{TAB}” '模拟按下 Tab 键选择安装项目
WScript.Sleep 200
WshShell.SendKeys " " '模拟按下空格键去除安装百度超级搜霸一行前的√号
WScript.Sleep 200 '延时0.3秒
WshShell.SendKeys “f” '模拟按下 F键同意协议

转载:https://zhidao.baidu.com/question/97848681.html

怎样使用BAT脚本实现自动按键盘的某个键相关推荐

  1. BAT脚本如何自动执行 adb shell 以后的命令

    @echo off echo su > temp.txt echo 其它命令 >> temp.txt adb shell < temp.txt del temp.txt 求问 ...

  2. Windows下解决依赖动态库问题:bat脚本实现自动复制dll文件

    1. 问题 Windows下,exe文件在设计实现时可能依赖某些动态库(*.dll文件),这些在调试台调试或在本机运行因为指定了包含库文件或者指定了环境变量,使得运行时可以找到并调用这些文件.但是环境 ...

  3. bat脚本如何自动输入y_Linux系统如何设置开机自动运行脚本?

    大家好,我是良许. 在工作中,我们经常有个需求,那就是在系统启动之后,自动启动某个脚本或服务.在 Windows 下,我们有很多方法可以设置开机启动,但在 Linux 系统下我们需要如何操作呢? Li ...

  4. bat脚本如何自动输入y_在Mac如何写一个相对自动的翻译脚本

    近来使用的google翻译的插件有些不稳定, 时灵时不灵的,无奈的使用百度翻译了, 感觉体验也不好, 就想自己写一个翻译的脚本. 整体思路简单, 就是调用百度翻译api再将结果呈现出来, 最后使用al ...

  5. .bat脚本自动yes_第四章: Python脚本获取聚宽(JQData)免费行情数据

    本期目标: 从聚宽数据API中获取期权行情数据并写入到云数据库(MySql)中,通过superset访问存储在数据库中的数据. 本期导读: 聚宽金融数据API 获取ETF期权日终行情 数据写入到MyS ...

  6. bat脚本中如何多次键盘输入并判断_第四章: Python脚本获取聚宽(JQData)免费行情数据...

    本期目标: 从聚宽数据API中获取期权行情数据并写入到云数据库(MySql)中,通过superset访问存储在数据库中的数据. 本期导读: l 聚宽金融数据API l 获取ETF期权日终行情 l 数据 ...

  7. Drcom客户端可以卸载了! 在Windows上编写bat脚本实现深大校园网认证, 并可断线重连(Drcom Pt版)

    写在前面 之前有写文章分析了深大校园网的认证过程, 编写Linux脚本可在路由器等Linux设备上实现自动登录, 断线自动重连. 考虑到Windows才是主要使用者, 本篇文章分享在Windows上编 ...

  8. bat脚本交互输入_基于winserver操作系统的自动清理Oracle3天前归档日志脚本分享...

    概述 最近某台oracle数据库中的归档日志太多了,一天都有几十G的归档日志产生,总是提示归档空间满,导致orcle总是与服务器断开,所以就写了个定期清理Oracle归档日志的脚本,先看下整体思路. ...

  9. bat脚本交互输入_windows 10 如何设定计划任务自动执行 python 脚本?

    场景: 我们都会用 python 写了一些脚本,有一些是爬虫脚本,比如爬取知乎特定话题的热门问题,有一些是定期的统计分析脚本,输出统计结果到文档中.之前我都是手动执行这些脚本,现在我希望如何这些脚本能 ...

  10. ftp、sftp利用bat脚本自动下载以及上传文件

    一.ftp利用bat自动上传下载文件 首先,先打开cmd,看下ftp命令是否是开通了的,如果提示ftp不是支持的命令,则需要自己去控制面板-程序以及功能-打开ftp功能.然后就是先自己用cmd命令,进 ...

最新文章

  1. python3.8.5 应用程序无法启动-macos python3.8.5 打开摄像头问题
  2. 上海交通大学乐经良高数手写笔记-一元积分学
  3. 经典C语言程序100例之五二
  4. 安卓APP_ 布局(6) —— ConstrainLayout约束布局(重要)
  5. 【渝粤教育】广东开放大学 劳动人事争议处理法 形成性考核 (51)
  6. 模糊pid控制的温度系统matlab源代码_模糊PID控制系统(二)对比分析
  7. 利用Microsoft.VisualBasic dll来修改系统时间
  8. Http请求返回最外层的模型
  9. PropertyUtils的使用
  10. 《老路用得上的商学课》71-75学习笔记
  11. unll是什么意思_javascript中null是什么意思?
  12. wifi 性能 测试 android,WiFi性能测试app下载
  13. 第十六章 没有银弹 ---软件工程中的根本和次要问题
  14. 【操作系统】简易文件系统设计
  15. 从小白到web渗透工程师——零基础指南(1)web渗透工程师介绍
  16. SBW(线控转向系统转向盘子系统Matlab/Simulink模型搭建)
  17. 模拟增强PSP实用软件iRShell 3.81PS补丁放出
  18. Flutter 里的语法糖解析,知其所然方能潇洒舞剑 | 开发者说·DTalk
  19. DDR4之地址空间、颗粒容量、page size计算
  20. 采购外系统——POC的重要性

热门文章

  1. 简单多边形的三角剖分相关技术
  2. 远程访问SOAP协议接口
  3. OSX 安装MongoDB
  4. 年会抽奖程序,及时安排一波【开源项目】
  5. VM虚拟机同步.4开同步教程MouseWithoutBorders无界鼠标安装配置教程
  6. 2021-06-22Oracle常用函数
  7. 经纬度(度分秒)和十进制相互转换
  8. hprose for java 教程_Hprose for Java怎么使用?Hprose for Java使用教程
  9. matlab计算abc三相短路电流_电工都知道三相电动机按一千瓦两个电流计算 却不会计算公式...
  10. 感性电路电流计算_电流、电压、电阻的关系和单位换算表