VBS脚本实例
一、一键升级哨位台核心板程序脚本。
############################################################
Set ws=WScript.CreateObject("wscript.shell")
PATH= createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path
IP="192.168.46.73"
NAME="UpdatePacket_WJT2000-B_V3.1.0.bin"
ws.Run "C:\Users\Administrator\Desktop\1\RECUpgrade.exe"
UpdateOperate()
'*************************************************************************
Function UpdateOperate()
WScript.Sleep 1000
ws.SendKeys IP
ws.SendKeys "{TAB 3}"
ws.SendKeys "{ENTER 2}"
WScript.Sleep 200
ws.SendKeys "{TAB 6}"
WS.SendKeys "{ENTER}"
WScript.Sleep 200
WS.SendKeys PATH&"\"&NAME
WScript.Sleep 200
'ws.SendKeys "{ENTER}"
ws.SendKeys "{TAB 2}"
ws.SendKeys "{ENTER}"
WScript.Sleep 200
ws.SendKeys "{TAB 3}"
ws.SendKeys "{ENTER}"
End Function
'*****************************************************************************
二、一键升级哨位台底板单片机脚本。
Set ws=WScript.CreateObject("wscript.shell")
PATH= createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path
NAME= "MCU_WJT2000-B_ShaoWei_V3.1.0.hex"
ws.Run PATH&"\"&"STC-ISP.exe"
WScript.Sleep 1000
ControlMouse()
UpdateOperate()
'*******************************************************************
Function UpdateOperate()
ws.SendKeys "{TAB 9}"
ws.SendKeys "{ENTER}"
WScript.Sleep 1000
ws.SendKeys PATH&"\"&NAME
WScript.Sleep 300
ws.SendKeys "{ENTER}"
ws.SendKeys "{TAB 4}"
ws.SendKeys "{ENTER}"
End Function
'***************************************************************
'***********************************************************************
Function ControlMouse()
'***********************************************************************
Set mouse=New SetMouse
mouse.getpos x,y ''获得鼠标当前位置坐标
'MsgBox x & " " & y
mouse.move 808,584 '把鼠标移动到坐标
WScript.Sleep 200
mouse.clik "dbclick" '双击
End Function
'*****************将以下代码加入到vbs文件末就能如以上方法调用(定义SetMouse类)*******************************************************************************************
Class SetMouse
private S
private xls, wbk, module1
private reg_key, xls_code, x, y
Private Sub Class_Initialize()
Set xls = CreateObject("Excel.Application")
Set S = CreateObject("wscript.Shell")
'vbs 完全控制excel
reg_key = "HKEY_CURRENT_USER\Software\Microsoft\Office\$\Excel\Security\AccessVBOM"
reg_key = Replace(reg_key, "$", xls.Version)
S.RegWrite reg_key, 1, "REG_DWORD"
'model 代码
xls_code = _
"Private Type POINTAPI : X As Long : Y As Long : End Type" & vbCrLf & _
"Private Declare Function SetCursorPos Lib ""user32"" (ByVal x As Long, ByVal y As Long) As Long" & vbCrLf & _
"Private Declare Function GetCursorPos Lib ""user32"" (lpPoint As POINTAPI) As Long" & vbCrLf & _
"Private Declare Sub mouse_event Lib ""user32"" Alias ""mouse_event"" " _
& "(ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)" & vbCrLf & _
"Public Function getx() As Long" & vbCrLf & _
"Dim pt As POINTAPI : GetCursorPos pt : getx = pt.X" & vbCrLf & _
"End Function" & vbCrLf & _
"Public Function gety() As Long" & vbCrLf & _
"Dim pt As POINTAPI: GetCursorPos pt : gety = pt.Y" & vbCrLf & _
"End Function"
Set wbk = xls.Workbooks.Add
Set module1 = wbk.VBProject.VBComponents.Add(1)
module1.CodeModule.AddFromString xls_code
End Sub
'关闭
Private Sub Class_Terminate
xls.DisplayAlerts = False
wbk.Close
xls.Quit
End Sub
'可调用过程
Public Sub getpos( x, y)
x = xls.Run("getx")
y = xls.Run("gety")
End Sub
Public Sub move(x,y)
xls.Run "SetCursorPos", x, y
End Sub
Public Sub clik(keydown)
Select Case UCase(keydown)
Case "LEFT"
xls.Run "mouse_event", &H2 + &H4, 0, 0, 0, 0
Case "RIGHT"
xls.Run "mouse_event", &H8 + &H10, 0, 0, 0, 0
Case "MIDDLE"
xls.Run "mouse_event", &H20 + &H40, 0, 0, 0, 0
Case "DBCLICK"
xls.Run "mouse_event", &H2 + &H4, 0, 0, 0, 0
xls.Run "mouse_event", &H2 + &H4, 0, 0, 0, 0
End Select
End Sub
End Class
'*************************************************************************************
VBS脚本实例的更多相关文章
- Vbs脚本经典教材(转)
Vbs脚本经典教材(最全的资料还是MSDN) —为什么要使用Vbs? 在Windows中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改 ...
- 工控随笔_11_西门子_WinCC的VBS脚本_02_运算符
VBS脚本做为编程语言,提供了很多的运算符,通过这些运算符,可以实现不同的操作.运算符具有不同的类型 不同的运算符之间具有运算优先级. 一.运算符的分类 大体分为以下几类: 1.赋值运算符 2.算术运 ...
- Vbs 脚本编程简明教程之一
—为什么要使用 Vbs ? 在 Windows 中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改名.删除,也许你每天启动 计算机第一件 ...
- Vbs脚本经典教材
转载:http://www.cnblogs.com/BeyondTechnology/archive/2011/01/10/1932440.html Vbs脚本经典教材(最全的资料还是MSDN) —为 ...
- 使用vbs脚本进行批量编码转换
使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看分析在Linux系统下开发的项目代码,我们知道Linux系统中文本文件默认编码格式是UTF-8,而Windows中文系统中的默 ...
- LoadRunner脚本实例来验证参数化的取值
LoadRunner脚本实例来验证参数化的取值 SINM {3]!G0问题提出: 主要想试验下,在Controller中,多个用户,多次迭代中参数的取值.51Testing软件测试网(['H5f,d ...
- LoadRunner关联函数的脚本实例--如何操作关联参数
LoadRunner关联函数的脚本实例--如何操作关联参数 这几天一直在学习LoadRunner的VuGen编程,今天想对关联函数web_reg_save_param做详细的试验和研究: ~f6p q ...
- 在本地主机上powershell中连接远程主机执行vbs脚本,得到执行结果(2008版及以上)
在桌面版的主机上远程管理服务器版主机,在本地powershell中连接远程主机执行vbs脚本,得到执行结果. 执行步骤: 1.将本地主机上的Hyper.vbs复制到远程连接主机上.例如,本地vbs脚本 ...
- [VBS]脚本中的字典、动态数组、队列和堆栈
今天用VBS脚本写了几个程序,用到了字典(Dictionary).动态数组(ArrayList).队列(Queue)和堆栈(Stack).现在写篇Blog总结一下 :-) 1.编写环境 今天突发奇想下 ...
随机推荐
- jQuery的animate在火狐浏览器上不支持backgroundPositionX的解决方法
在网上找的ffSupp.js文件 /** * 自定义backgroundPosition的animate,支持火狐,jQuery1.8以上版本 * @author Meleong * v1.00 */ ...
- 学习自动化工具gulp
<什么是gulp>官网地址:http://gulpjs.com/ gulp是可以自动化执行任务的工具,在开发流程里,一定有一些动作需要手工的重复的去执行,例如: ·把一个文件拷贝到另外一个 ...
- Xcode好用的插件(随时更新)
古人云"工欲善其事必先利其器",打造一个强大的开发环境,是立即提升自身战斗力的绝佳途径!下面简单介绍下插件是什么.如何使用Xcode插件以及一些常用的Xcode插件的推荐. 一.插 ...
- open()的模块
对文件操作流程: 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 mode can be: * 'r' 只读. * 'w' 写入,如果之前有就覆盖 * 'a' ...
- Latex问题收集
1. Latex中的空格 两个quad空格 a \qquad b 两个m的宽度 quad空格 a \quad b 一个m的宽度 大空格 a\ b 1/3m宽度 中等空格 a\;b 2/7m宽度 小空格 ...
- https请求时出错:Could not establish trust relationship for the SSL/TLS secure channel
当我在用NET命名空间下获取URL的时候,提示如下错误: The underlying connection was closed: Could not establish trust relatio ...
- ZOJ 1003 Crashing Balloon
#include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using ...
- 老司机的奇怪noip模拟T2-huangyueying
2. 黄月英(huangyueying.cpp/c/pas )[问题描述]xpp 每天研究天文学研究哲学,对于人生又有一些我们完全无法理解的思考.在某天无聊学术之后, xpp 打开了 http://w ...
- L3-005. 垃圾箱分布
L3-005. 垃圾箱分布 题目链接:https://www.patest.cn/contests/gplt/L3-005 Dijstra 与L2-001.紧急救援类似,是Dijstra最短路的拓展, ...
- Windows上安装MongoDB步骤
事前准备: 1.在mongoDB官网下载.msi文件,我下的是社区版,下载地址:https://www.mongodb.com/download-center#community 2.点击msi文件安 ...