当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 脚本编程 4 驱动器

VBScript
VBS的各种应用的比较实用小代码
用VBS调用程序并对程序的运行情况进行监控的两个代码
禁止QQ上网的vbs代码
一个收集的下载木马并运行的VBS代码
可以将文件转换为vbs语句的vbs代码
收藏的比较精典VBS代码
好玩的vbs特色代码vbs栈类
使用VBScript 中的类组织开发
防SQL注入的VBSrcipt代码
用VBSrcipt判断是否是日期
Stream、WshShell、WshUrlShortcut对象及Shell.Application的参数与使用
用vbs模拟的一个asp的分页显示功能
本地连接禁用/启用批处理脚本
右键发送(sendto),创建快捷方式到自定义的位置 的vbs
WINDOWS脚本实践:为SAP补丁制作的VBS脚本代码
Adsutil.vbs 在脚本攻击中的妙用[我非我原创]
用VBS修改IIS Metabase 的代码
用VBS实现脚本结束进程与防止进程启动
用vbs实现在启动 Windows 资源管理器时打开特定文件夹
用vbs实现的确定共享文件夹的本地路径?

VBScript 中的 脚本编程 4 驱动器


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 156 ::
收藏到网摘: n/a

驱动器的编程对黑客编程来说至关重要。好在vbs给我们提供了方便的集合,使得工作变得很简单。
1、检查驱动器
使用filesystemobject的driveexists方法
例如:
set fs=createobject("scripting.filesystemobject")
if fs.driveexists("h") then
......

2、获得驱动器属性
可以使用getdrive方法,然后可以通过drive对象的属性或的驱动器的属性。常用属性有
drivetype:以整数形式返回驱动器的类型 0表示unknown 1表示可移动的 2表示固定的 3表示网络驱动器 4表示cd-room
5表示ram盘

freespace:可用空间
totalsize:总空间
volumename:驱动器标卷

例如:
********************************************************
set fs=createobject("scripting.filesystemobject")
set drv=fs.getdrive("D")
t=drv.drivetype
y=drv.freespace
wscript.echo "类型" & t
wscript.echo "可用空间" & y
*******************************************************

如果大家还记得的话,应该知道还有个drives集合,这个东西比前面所说得更方便,比如我们要得到系统上所有的驱动器可以得到这个集合,然后使用foreach来检查。另外,有时候我们要编制一个病毒,可能会要感染软盘,这个时候我们需要检查软盘是不是准备好了,看下面这个程序:

**********************************************************
wscript.echo getdrivelist()

function getdrivelist() '自定义函数
dim fs,d,dc,s,n,crlf
crlf=chr(13)&chr(10)
set fs=createobject("scripting.filesystemobject")
set dc=fs.drives '获得驱动器集合
for each d in dc
n=""
s=s &d.driveletter & "--"
if d.drivetype=remote then
n=d.sharename
elseif d.isready then
n=d.volumename
end if
s=s & n& crlf
next
getdrivelist=s
end function
***********************************************************

3、映射网络驱动器
网络共享对于脚本用户来说必须经过映射才能够使用。使用network对象的mapnetworkdrive方法可以实现映射。
set wn=wscript.createobject("wscript.network")
wn.mapnetworkdrive "k:","\\yaya\music",true
其中最后一个参数指定是不是永久的映射,如果不写最后一个参数,下次启动的时候,映射就会被取消。
如果要断开映射使用wn.removenetworkdrive "k:",true,true
如果网络驱动器正在使用中,要强制断开的话把第二个参数设置为true
第三个参数表示永久取消映射。