收藏的比较精典VBS代码

所属分类: 脚本专栏 / vbs 阅读数: 2095
收藏 0 赞 0 分享

文件操作

复制代码 代码如下:

Set fso = Wscript.CreateObject("Scripting.FileSystemObject") '创建文件系统对象,用以处理驱动器、文件夹和文件
Set WshShell = Wscript.CreateObject("Wscript.Shell") '创建系统Shell对象,用以运行程序等等
if fso.fileexists("D:\刀剑Online\alreadyexist.txt") then '如果找到文件“D:\刀剑 Online\alreadyexist.txt”则
WshShell.Run("D:\刀剑Online\刀剑Online.exe") '运行“D:\刀剑Online\刀剑Online.exe”
elseif fso.fileexists("\\gengxin\update\dj.exe") then '否则,如果找到“\\gengxin\update\dj.exe”则
WshShell.Run("\\gengxin\update\dj.exe") '运行“\\gengxin\update\dj.exe”
else
WshShell.Run("D:\刀剑Online\刀剑Online.exe") '否则运行“D:\刀剑Online\刀剑Online.exe”
end if '根据条件执行语句结束


VBS 导入注册表,然后执行文件
复制代码 代码如下:

dim Wsh Set Wsh = WScript.CreateObject("WScript.Shell")
Wsh.RegWrite "HKCU\SOFTWARE\AUDITION\AUTOSTART",0,"REG_DWORD"
Wsh.RegWrite "HKCU\SOFTWARE\AUDITION\PATH","G:\网络游戏\劲舞团1.5","REG_SZ"
Wsh.RegWrite "HKCU\SOFTWARE\AUDITION\VERSION",1010,"REG_DWORD" Wsh.run "patcher.exe"

PING内网 不通就 执行关机 的VBS
复制代码 代码如下:

strIP = "192.168.0.254" '被PING的内网机器
Set objShell = CreateObject("WScript.Shell")
If Not IsOnline(strIP) Then objShell.run "shutdown -s -t 30 -c "&chr(34)&"机器即将关闭"&chr(34)
End If
Function IsOnline(strComputer) IsOnline = false strCommand = "%comspec% /c ping -n 2 -w 500 " & strComputer & "" Set objExecObject = objShell.Exec(strCommand) Do While Not objExecObject.StdOut.AtEndOfStream strText = objExecObject.StdOut.ReadAll() If Instr(strText, "Reply") > 0 Then IsOnline = true End If Loop End Function

开机脚本VBS用于ARP邦定
复制代码 代码如下:

Set WshShell = Wscript.CreateObject("Wscript.Shell")
WshShell.run "arp -s 192.168.0.1 30-18-e5-33-01",0
WshShell.run "arp -s 192.168.0.5 30-18-e5-33-07",0

运行程序
复制代码 代码如下:

Dim a
Set Wsh = WScript.CreateObject("WScript.Shell")
a.Run "d:\网络游戏\大话西游II\xy-2.exe"

运行 oshell.run "d:\soft\hf\hfgame3\GameClient.lnk"

断开网络连接
复制代码 代码如下:

strNICName = " disable =net pci\*"
Set objShell = CreateObject("Wscript.Shell")
strCommand = "devcon.exe"& strNICName
objShell.Run strCommand, 0, False


启动网络连接
复制代码 代码如下:

strNICName = " enable =net pci\*"
Set objShell = CreateObject("Wscript.Shell")
strCommand = "devcon.exe"& strNICName
objShell.Run strCommand, 0, False

删除文件的VBS脚本
复制代码 代码如下:

dim fso Set fso = CreateObject("Scripting.FileSystemObject")
fso.CopyFile "\\server\共享\XXX.lnk","c:\目标位置1\",true '添加
fso.CopyFile "\\server\共享\XXX.lnk","c:\目标位置2\",true '添加
fso.DeleteFile "c:\目标位置1\XXX.lnk" ,true '删除 fso.DeleteFile "c:\目标位置2\XXX.lnk" ,true '删除
Set FSO=NoThing WScript.quit

无界面自动检测安装iscsi客户端,映射及断开映射vbs脚本

下列代码实现无界面自动检测安装iscsi客户端,自动映射
复制代码 代码如下:

On Error Resume Next setupfile="iscsi2.0.exe" 'iscsi客户端安装文件路径
serverip="192.168.0.100" 'iscsi服务器ip
Set oshell= CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
if not fso.fileexists(oshell.ExpandEnvironmentStrings("%WinDir%")+"\system32\iscsicpl.cpl")
then oshell.run setupfile&" /q",,1
end if
oshell.run "iscsicli AddTargetPortal "&serverip&" 3260",0,1
oshell.run "iscsicli LoginTarget iqn.2005-02.com.ricecake.iscsi:00 T * * * * * * * * * * * * * * * 0",0,1


下例代码实现无界面删除iscsi映射盘
复制代码 代码如下:

filetmp="c:\my.txt"
On Error Resume Next
Set Shell = CreateObject("WScript.Shell")
Set fso = Wscript.CreateObject("Scripting.FileSystemObject")
shell.run "cmd /c iscsicli sessionlist>"&filetmp,0,1
Const ForReading = 1
Dim fso, theFile, retstring
Set fso = CreateObject("Scripting.FileSystemObject")
Set theFile = fso.OpenTextFile(filetmp, ForReading)
aaa=thefile.readall
thefile.close
function myreadline()
X=instr(1,aaa,vbcrlf,vbTextCompare)
myline=mid(aaa,1,x-1)
aaa=right(aaa,len(aaa)-x)
if len(aaa) =<1 then myline ="end"
myreadline=myline
end function
Do While bbb<>"end"
bbb=myreadline
if bbb <> "end" then
if bbb <>" " then
if instr(bbb,"Session")<>0 then
temID=mid(bbb,instr(bbb,":")+1,len(bbb)-instr(bbb,":"))
shell.run "iscsicli logouttarget"&temID,0
end if
end if
end if
Loop
fso.deletefile(filetmp)


删除QQ用户文件强制删除是不行的了,要跳过的话这样:
复制代码 代码如下:

Dim fso, folderspec, f, f1, fc
folderspec = "f:\Program Files\Tencent\QQ" '设置你的QQ文件夹
Dim Re
Set Re = New RegExp
Re.Pattern = "^\d{4,13}$"
Set fso = CreateObject("scripting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.SubFolders
For Each f1 in fc If Re.Test(f1.name) Then
On Error Resume Next
f1.Delete(true)
On Error GoTo 0
End If
Next

格5分钟运行一次批处理程序
复制代码 代码如下:

Dim Wsh
Set Wsh = WScript.CreateObject("WScript.Shell")
Do Wsh.Run "d:\aaa.bat" '你要执行的批处理
WScript.Sleep(300000)
Loop

要设开机自动运行,禁止程序

更多精彩内容其他人还在看

VBS监视网络连接与断开的代码

监视网络连接与断开,特殊情况下可能有点用,两个VBS脚本均来自微软官网
收藏 0 赞 0 分享

可以修改脚本自身运行次数的vbs(Self modifying script)

通过脚本修改脚本的内容,这里以统计脚本运行次数为例,想学习vbs的朋友可以参考下
收藏 0 赞 0 分享

VBScript之通过对比注册表查找隐藏的服务

系统服务有可能被 rootkit 隐藏,但有些时候我们仍可以从注册表中找到相关的信息。建议以管理员权限运行,否则有些服务列举不出来或出现错误的提示
收藏 0 赞 0 分享

VBScript 监控并结束指定进程的代码

有时候我们需要监控一些进程,防止一些进程的开启,发现指定进程运行就关闭它,那么就可以参考下面的代码
收藏 0 赞 0 分享

VBScript 输出中的对齐实现方法

有时候我们需要在vbs中输入的字符实现对齐效果,那么就可以参考下面的代码了
收藏 0 赞 0 分享

vbs 获取当前目录的实现代码

获取当前正执行的VBS的路径,通过Scripting.FileSystemObject组件实现
收藏 0 赞 0 分享

vbs 获取当前目录文件数量的代码(不包括子文件夹中的)

有时候我们需要获取当前目录下有多少个文件,那么就可以参考下面的代码
收藏 0 赞 0 分享

VBS获取当前目录下所有文件夹名字的代码

有时候我们需要获取当前目录下所有文件夹的名字,那么就可以参考下面的代码了
收藏 0 赞 0 分享

VBS读取注册表的两种方法

有时候我们需要用vbs来操作注册表,一般情况下有两种方法,一种是通过wshshell对象的regread,另外一种是使用WMI操作注册表,下面简单的介绍下
收藏 0 赞 0 分享

查看系统C盘剩余空间的VBS脚本

查看系统C盘剩下的空间方法有很多,在本文要为大家介绍的是通过VBS脚本是如何实现的,感兴趣的朋友不要错过
收藏 0 赞 0 分享
查看更多