下面这个是先执行程序后,然后再结束程序。
Dim Wsh
Set Wsh = WScript.CreateObject("WScript.Shell")
'下行是设置延时启动时间 5000等于5秒
WScript.Sleep()
'下行引号内填写服务器上批处理文件的共享路径
Wsh.Run "\\服务器\fuwu.exe",false,false
'下行是设置延时清除时间 5000等于5秒
WScript.Sleep()
'下行清除进程
Wsh.Run "taskkill /f /im fuwu.exe",
Set Wsh=NoThing
WScript.quit

如果只想打开程序可以使用下面的代码:

Dim Wsh
Set Wsh = WScript.CreateObject("WScript.Shell")
'下行是设置延时启动时间 5000等于5秒
WScript.Sleep()
'下行引号内填写服务器上批处理文件的共享路径
Wsh.Run "\\服务器\fuwu.exe",false,false
Set Wsh=NoThing
WScript.quit

如果只想关闭程序可以用下面的代码:

Dim Wsh
Set Wsh = WScript.CreateObject("WScript.Shell")
'下行是设置延时清除时间 5000等于5秒
WScript.Sleep()
'下行清除进程
Wsh.Run "taskkill /f /im fuwu.exe",
Set Wsh=NoThing
WScript.quit

将上面的代码保存为 xx.vbs ,双击就可以运行。

——————————————————————分割线————————————————————————————

用vbs打开文件

set ws=createobject("wscript.shell")
ws.run"打开文件所使用的程序+空格+程序路径",x,ture

Run方法有三个参数:
第一个参数:是你要执行的程序的路径,
第二个参数:是窗口的形式,0后台运行;1正常运行;2最小化;3最大化;缺省的话表示正常运行
第三个参数:是表示这个脚本是等待还是继续执行,如果设为了True,脚本就会等待调用的程序退出后再向后执行。

第二个参数可取值为下面为可选值:
0 隐藏一个窗口并激活另一个窗口。
1 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。第一次显示该窗口时,应用程序应指定此标志。
2 激活窗口并将其显示为最小化窗口。
3 激活窗口并将其显示为最大化窗口。
4 按最近的窗口大小和位置显示窗口。活动窗口保持活动状态。
5 激活窗口并按当前的大小和位置显示它。
6 最小化指定的窗口,并按照 Z 顺序激活下一个顶部窗口。
7 将窗口显示为最小化窗口。活动窗口保持活动状态。
8 将窗口显示为当前状态。活动窗口保持活动状态。
9 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。还原最小化窗口时,应用程序应指定此标志。
10 根据启动应用程序的程序状态来设置显示状态。

dim wsh
set wsh=wscript.createobject("wscript.shell") 
wsh.run "notepad.exe c:\test.vbs",1,ture '指定文件打开程序
wsh.run "c:\test.doc",1,ture '使用系统默认程序打开文件
set wsh=nothing

如果你希望使用记事本打开程序,而不是直接运行,那么就指定文件的打开程序。

例1:打开记事本和IE浏览器

Set ws = CreateObject("WScript.Shell")

ws.Run "notepad",,True

ws.Run "iexplore"

例2:隐藏BAT执行窗口

Set ws = CreateObject("WScript.Shell")

ws.Run "x.bat",0

例3:运行cmd命令,执行netstat并保存执行结果到x.txt

Set ws = CreateObject("WScript.Shell")

ws.Run "cmd /c netstat -an>>x.txt",0

例4:结束IE的进程

Set ws = CreateObject("WScript.Shell")

ws.Run "taskkill /f /im iexplore.exe",0

============================================================

补充:

这里有个类似的方法就是Exec 方法,具体看下面的例子


例1:运行文件

Set ws = CreateObject("WScript.Shell")

ws.Exec "notepad c:\x.txt" '对于Exec应指明程序,此notepad是必须的

例2:运行程序>获取进程PID值>强行结束进程(没有Run+taskkill强:如在记事本未保存的情况下结束进程,Exec会出错,而Run不会)>判断进程是否在运行(这个功能不错)

Set ws = CreateObject("WScript.Shell")

Set e = ws.Exec("notepad")

MsgBox e.ProcessId

e.Terminate

WSH.Sleep 1000

MsgBox e.Status '0为运行,1为结束

例3:直接获取dos命令输出,dos窗口会闪一下,Exec没有窗口控制功能

Set ws = CreateObject("WScript.Shell")

Set e = ws.Exec("ipconfig")

MsgBox e.Stdout.ReadAll

例4:

Set ws = CreateObject("WScript.Shell")

Set e = ws.Exec("cmd /c echo Hi")

MsgBox e.Stdout.ReadAll

出处:http://wenwen.soso.com/z/q390167953.htm
出处:http://foxroom.diandian.com/post/2011-05-21/947745

使用VBS打开程序和关闭程序的更多相关文章

  1. 批处理--批量打开程序&批量关闭程序

    批量打开程序 start D:\work\RunSvr01\IceFire88.01.exe start D:\work\RunSvr02\IceFire88.02.exe start D:\work ...

  2. linux启动程序和关闭程序脚本

    关闭脚本: #!/bin/bash source /etc/profile log() { echo `date +[%Y-%m-%d" "%H:%M:%S]` $1 } log ...

  3. C# 程序的关闭 讲究解释

    程序的关闭是很讲究的,处理的不好的话,将软件连续开启和关闭,当数次后在启动软件后程序会崩溃.或者程序退出很慢.细节决定成败,一款好的软件应该从各方面都要做严格地反复地推敲,力争做到无可挑剔.    有 ...

  4. android的原理,为什么不需要手动关闭程序

    转自android的原理,为什么不需要手动关闭程序 不用在意剩余内存的大小,其实很多人都是把使用其他系统的习惯带过来来了. Andoird大多应用没有退出的设计其实是有道理的,这和系统对进程的调度机制 ...

  5. CMD命令利用tasklist与taskkill关闭程序

    昨天远程服务器后,服务器无故卡住了,鼠标各种延迟与无反应,想在进程管理器里关闭程序也卡住,想点击重启系统也卡死无反应.纠结后win+R打开了cmd用shutdown重启才算搞定.重启期间思考了下,如何 ...

  6. windows vbs启动多个应用程序并使程序最小化(显示桌面)

      windows vbs启动多个应用程序并使程序最小化(显示桌面) CreationTime--2018年7月26日11点18分 Author:Marydon 1.应用场景 每天开机后,都需要打开平 ...

  7. iOS 打开本地 其他应用程序(URL Types)

    iOS 打开本地其他应用程序(URL Types) /*前言废话:Xcode是神奇的,是我所见到的编译器中最为神奇的,如:它可以同时运行两个甚至更多Project到我们模拟器上,可以同时使用一个模拟器 ...

  8. 应用程序的关闭退出(在FMX中,Activity替代了Form的概念)

    在VCL中,关闭程序的主窗体也就意味着程序的主循环结束,主程序自然而然结束.所以在主窗体中使用窗体的关闭函数(Close)即可,如下: procedure TfrmMain.btncloseClick ...

  9. 以&运行在后台的程序,关闭terminal后,相应进进程自动关闭

    以&运行在后台的程序,关闭terminal后,相应进进程自动关闭

随机推荐

  1. 多线程的设计模式--Future模式,Master-Worker模式,生产者-消费者模式

    代码示例: public interface Data { String getRequest(); } public class FutureData implements Data{ privat ...

  2. cdr X6 64位32位缩略图补丁包

    cdr X6 64位32位缩略图补丁包下载 安装了X6没有缩略图的话,点击下面链接下载安装插件即可 点击下载

  3. 《JAVA多线程编程核心技术》 笔记:第五章:定时器Timer

    一.定时器Timer的使用 1.1 方法schedule(TimerTask task, Date time) 是否过期 执行说明 开始执行时间 time>当前时间(未过期) 在time到达时执 ...

  4. ThinkPHP中通过URL重写隐藏应用的入口文件index.php的相关服务器的配置

    [ Apache ] 将httpd.conf配置文件中mod_rewrite.so所在行前面的‘#’去掉 AllowOverride None 将None改为 All 效果图

  5. php学习之有用的资源 总结

    1.php之道,http://laravel-china.github.io/php-the-right-way/ 2.改变php变成效率 http://www.php100.com/html/duj ...

  6. 翻页bug 在接口文档中应规范参数的取值区间

    <?php$a=array("red","green","blue","yellow","brown&q ...

  7. Cutoff frequency

    Cutoff frequency - Wikipedia https://en.wikipedia.org/wiki/Cutoff_frequency In physics and electrica ...

  8. python系列十六:Python3 面向对象

    #!/usr/bin/python #-*-coding:gbk-*- #Python3 面向对象 '''面向对象技术简介    类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了 ...

  9. NOIP2018酱油记

    考完了,终于有时间来写游记了. 有一种悲伤,叫做知道正解是什么但是就是不会写... 有一种遗憾,叫做能拿到的分考完才意识到... 有一种$NOIP$,叫做$Day1$原题大赛,$Day2AHOI$.. ...

  10. spring 实现定时任务

    spring实现定时任务超级简单.比使用quartz简单,比使用timer强大.如下是一个简单的springboot任务,启用了定时任务 @SpringBootApplication@Componen ...