一、一键升级哨位台核心板程序脚本。

############################################################

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脚本实例的更多相关文章

  1. Vbs脚本经典教材(转)

    Vbs脚本经典教材(最全的资料还是MSDN) —为什么要使用Vbs? 在Windows中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改 ...

  2. 工控随笔_11_西门子_WinCC的VBS脚本_02_运算符

    VBS脚本做为编程语言,提供了很多的运算符,通过这些运算符,可以实现不同的操作.运算符具有不同的类型 不同的运算符之间具有运算优先级. 一.运算符的分类 大体分为以下几类: 1.赋值运算符 2.算术运 ...

  3. Vbs 脚本编程简明教程之一

    —为什么要使用 Vbs ? 在 Windows 中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改名.删除,也许你每天启动 计算机第一件 ...

  4. Vbs脚本经典教材

    转载:http://www.cnblogs.com/BeyondTechnology/archive/2011/01/10/1932440.html Vbs脚本经典教材(最全的资料还是MSDN) —为 ...

  5. 使用vbs脚本进行批量编码转换

    使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看分析在Linux系统下开发的项目代码,我们知道Linux系统中文本文件默认编码格式是UTF-8,而Windows中文系统中的默 ...

  6. LoadRunner脚本实例来验证参数化的取值

    LoadRunner脚本实例来验证参数化的取值 SINM {3]!G0问题提出:  主要想试验下,在Controller中,多个用户,多次迭代中参数的取值.51Testing软件测试网(['H5f,d ...

  7. LoadRunner关联函数的脚本实例--如何操作关联参数

    LoadRunner关联函数的脚本实例--如何操作关联参数 这几天一直在学习LoadRunner的VuGen编程,今天想对关联函数web_reg_save_param做详细的试验和研究: ~f6p q ...

  8. 在本地主机上powershell中连接远程主机执行vbs脚本,得到执行结果(2008版及以上)

    在桌面版的主机上远程管理服务器版主机,在本地powershell中连接远程主机执行vbs脚本,得到执行结果. 执行步骤: 1.将本地主机上的Hyper.vbs复制到远程连接主机上.例如,本地vbs脚本 ...

  9. [VBS]脚本中的字典、动态数组、队列和堆栈

    今天用VBS脚本写了几个程序,用到了字典(Dictionary).动态数组(ArrayList).队列(Queue)和堆栈(Stack).现在写篇Blog总结一下 :-) 1.编写环境 今天突发奇想下 ...

随机推荐

  1. ES CPU和磁盘IO升高

    问题 ES监控出现偶尔的波动,CPU和磁盘IO升高 有时候在凌晨,业务请求比较低,也没有慢查询,GC也比较正常,没有出现Full GC ES内部的merge segment会占用CPU和磁盘资源,怀疑 ...

  2. crontab 的例子

    0 5 * * * python /home/iscas/xiujinnews/wangyi.py >>/home/iscas/xiujinnews/l og/wangyi.log 2&g ...

  3. MD5的Hash长度扩展攻击

    Hash长度扩展攻击 引子 无意中碰到一道题,大概代码是这样的 $flag = "XXXXXXXXXXXXXXXXXXXXXXX"; $secret = "XXXXXXX ...

  4. python文件操作_对文件进行复制拷贝_代码实现

    要求: 1,对已经存在的文件进行复制操作 2,复制后的文件在文件名后面加上[复件] 3,文件比较大如何优化处理 #-*- coding: UTF-8 -*- #这是python 2 下面写的,用的ra ...

  5. Unity3D 导出的apk进行混淆和加固防止反编译

    前言: 对于辛辛苦苦完成的apk程序被人轻易的反编译了,那就得不偿失了,这篇文章就是解决Unity打包出来的apk进行代码加固和混淆. 准备资料: 1:Obfuscator.zip  作用是代码混淆, ...

  6. Android系统签名文件

    系统签名所需要的工具 signapk.jar -------------------->out/host/linux-x86/framework/signapk.jar (build/tools ...

  7. ThreadLocal线程本地变量

    首先说明ThreadLocal存放的值是线程内共享的,线程间互斥的,主要用于线程内共享一些数据,避免通过参数来传递,这样处理后,能够优雅的解决一些实际问题,比如hibernate中的OpenSessi ...

  8. Chapter 2 Open Book——27

    My assessment was confident. 我的评价是很自信的. "Prophase.""Do you mind if I look?" he a ...

  9. 5-jQuery - AJAX get()/post()页面请求即执行

    get 前台页面 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> &l ...

  10. 2、FileOutputStream--->文件输出流(向文件写入数据)

    Api介绍 定义 FileOutputStream 用于写入诸如图像数据之类的原始字节的流.要写入字符流,请考虑使用 FileWriter. 构造方法 FileOutputStream(File fi ...