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

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

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. 【Python之路】第三篇--Python基本数据类型

    运算符 1.算数运算: # 在py2的 取整除运算中 9//2 = 4.0 # 引入 from __future__ import division 9//2 = 4.5 # py3中不需要! 2.比 ...

  2. Yii2 基于RESTful api 坑 访问会把控制器名称变为复数

    'urlManager' => [ 'class' => 'yii\web\UrlManager', 'enablePrettyUrl' => true, 'enableStrict ...

  3. Spring.net 学习IOC------属性注入

    我们就完成我们的第一个spring.net学习IOC的"hello world!". 1> 我们新建一个C# 的控制台项目名为Spring,然后引入Spring.Core.d ...

  4. 字符串:"2016-09-21T18:57:50+08:00[Asia/Chungking]" 转Date

    public static void main(String[] args) throws Exception { Date date1 = new Date(); SimpleDateFormat ...

  5. BestCoder Round #89

    过了这么久才来写-- BC的后两道题好难--(第二道题也不怎么简单--) 1001 Fxx and string 正着倒着枚举一次就ok #include<iostream> #inclu ...

  6. pthon之异常、文件练习题

    1.在当前目录下查找文件夹“电摄班”,如果不存在则创建2.在电摄班下创建boys.girls.两个txt文件3.将字典中属于电摄班的同学按男女区分,分别放到boys.girls文件中,每个名字在文件中 ...

  7. excel中的数据导入oracle方法

    SQL_loader批量上传数据 1.    注释 在工作中,很多时候会遇到如下情况:需要将excel中的数据批量上传到ORACLE表中.如果是小数据量,如几十条至几百条,那么用plsql dev工具 ...

  8. link 与 @import之对比

    页面中使用CSS的方式主要有3种:行内添加定义style属性值,页面头部内嵌调用和外面链接调用,其中外面引用有两种:link和@import.外部引用CSS两种方式link和@import的方式分别是 ...

  9. C#连接sqlserver数据库

    // 混合登录 写法1:Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPas ...

  10. PerformSelector 和 NSInvocation