vbs 实际操作 调用外部程序

孤者浪人 提交于 2020-02-08 08:09:04
**vbs调用外部程序**

WSH也就是用来解析Vbs的宿主,本身包含了几个个常用对象:

1、Scripting.FileSystemObject  —>  提供一整套文件系统操作函数

2、Scripting.Dictionary  —>  用来返回存放键值对的字典对象

3、Wscript.Shell  —>  提供一套读取系统信息的函数,如读写注册表、查找指定文件的路径、读取DOS环境变量,读取链接中的设置

4、Wscript.NetWork  —>  提供网络连接和远程打印机管理的函数。(其中,所有Scripting对象都存放在SCRRUN.DLL文件中,所有的Wscript对象都存放在WSHOM.ocx文件中。)

———————————————————————————————————

(打开对应应用如记事本,计算器,文件名或者路径)

option Explicit  '规范定义告诉计算机先声明后使用
dim obj   '变量名
Set obj = CreateObject("Wscript.Shell") 'set将一个对象引用赋给变量

'加true只打开对应的程序,关闭过后才打开下一个
'不加true,两个同时打开
obj.Run "notepad",,true      'notepad 记事本  calc 计算器  winword word文件名
obj.Run """路径名"""   		 '也可以包含路径名,用三个双引号来包含

注意

run 执行程序的路径,窗口的形式,脚本等待还是继续执行 (三个参数)
run也有返回值,1成功执行,0执行失败

———————————————————————————————————
处理错误

On Error Resume Next ——如果有错误跳过执行下一条语句
err 对象

on error resume next   '如果有错误跳过执行吓一跳
a=11 
b=0 
c=a/b 
if err.number<>0 then  'err.num 错误的个数
'description 原因  source来源
wscript.echo err.number & err.description & err.source 
end if

创建一个文件

dim fs,s 
set fs = wscript.createobject("scripting.filesystemobject")  '创建一个对象 
if(fs.folderexists("C:\Users\93997\Desktop\练习\1")) then  '判断文件是否存在
s = "is available"
else
s = "not exiet"
set folder = fs.createfolder("C:\Users\93997\Desktop\练习\1") '不存在创建一个文件
end if
wscript.echo s  '窗口提示

———————————————————————————————————
打印时间日期

dim date,clock
date = "February 6,2020"  '格式也可以写成#2/6/2020,"16:09:53 PM"
clock = "16:10:59 PM"      '时间也可以这样写

if(isdate(date)) then	  'isdate 用来判断是否可以转换日期
date = CDate(date)
else
msgbox "不能转换"
end if

clock = CDate(clock)
msgbox "当前日期为:" & date & " " & clock  '最后打印出来

———————————————————————————————————
删除文件

dim fs
set fs = createobject("scripting.filesystemobject")
if(fs.folderexists("xxxxxxxxxxxxxxxxxx")) then  '判断文件是否存在
fs.deletefolder("xxxxxxxxxxxxxx")
msgbox "删除成功"
else
msgbox "文件不存在"
end if 

———————————————————————————————————
自动创建文本文件

dim wshshell,autosavetime,txtfilename
autosavetime = 3000
set wshshell = createobject("wscript.shell")
txtfilename = inputbox("请输入你要创建的文件名:")
'打开激活记事本
wshshell.run "notepad"
wscript.sleep 200
wshshell.appactivate "无标题-记事本"
'三用输入名字存盘
wshshell.sendkeys "^s" 'ctrl+s
wscript.sleep 300
wshshell.sendkeys txtfilename
wscript.sleep 300
wshshell.sendkeys "%s" 'alt+s
wscript.sleep autosavetime
'四自动定时存盘
while wshshell.appactivate (txtfilename) = true  'appactivate 是定位到窗口的名字
wshshell.sendkeys "%s"
wscript.sleep autosavetime
wend
wscript.quit

———————————————————————————————————
刷屏

dim s
set s = createobject("wscript.shell")
s.appactivate "长路呀"  '通过应用标题来找位置
wscript.sleep 2000
for i=0 to 20 
s.sendkeys "1"
s.sendkeys "{ENTER}"
next
 **查阅:https://www.jb51.net/article/53280.htm**
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!