脚本编程 4 驱动器

(编辑:jimmy 日期: 2024/12/23 浏览:2)

驱动器的编程对黑客编程来说至关重要。好在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
   第三个参数表示永久取消映射。