腳本編程 4 驅動器
2020-07-26 12:06:18
供稿:網友
 
						驅動器的編程對黑客編程來說至關重要。好在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:","http://yaya/music",true 
   其中最后一個參數指定是不是永久的映射,如果不寫最后一個參數,下次啟動的時候,映射就會被取消。 
   如果要斷開映射使用wn.removenetworkdrive "k:",true,true 
   如果網絡驅動器正在使用中,要強制斷開的話把第二個參數設置為true 
   第三個參數表示永久取消映射。