脚本编程 4 驱动器

所属分类: 脚本专栏 / vbs 阅读数: 754
收藏 0 赞 0 分享
驱动器的编程对黑客编程来说至关重要。好在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
   第三个参数表示永久取消映射。
更多精彩内容其他人还在看

vbscript Split函数用法详解(字符串转数组函数)

本文详细介绍了vbscript中split函数的用法,有关split函数的一些实例,vbscript中split函数的语法介绍,有需要的朋友参考下
收藏 0 赞 0 分享

VBS实现将Excel表格保存为txt文本

希望能够找到个能给excel表另存为TXT的VBS代码,虽然另存为可以选择,但还是需要直接VBS执行这一步另存为TXT格式的,应该如何写代码呢
收藏 0 赞 0 分享

vbs解决处理TXT文本数据相关问题实现代码

使用vbs处理txt数据时,会遇到一些问题,本文将提供详细的解决方法,希望可以帮助你们
收藏 0 赞 0 分享

关于vbs 生成静态页面过程中出现的问题

访问某个aspx页面,然后把服务器返回的页面以filestream 的形式保存为html格式,接下来将介绍实现代码
收藏 0 赞 0 分享

dim函数第三个参数设置截取字符的长度问题

dim函数的第三个参数,也就是截取字符的长度,我在设置这个的时候,出了些问题,提示无效的过程调用或参数,本文详细介绍如何解决
收藏 0 赞 0 分享

邪恶的eval和new Function使用介绍

这些代码可以干什么?可以肯定的是可以干很多猥琐的事
收藏 0 赞 0 分享

WScript.Shell对象SpecialFolders属性未公开文档分享

WshShell对象的SpecialFolders属性返WshSpecialFolders 对象,该对象是一个特殊文件夹集合,其中包含整套Windows特殊文件夹
收藏 0 赞 0 分享

用VBS修改(设置)系统时间和日期的代码

用 VBS 把系统的时间修改到2038年1月19日3时14分07秒之后,这样某些依赖于 Unix 时间戳的程序就会出问题。那么怎样用 VBS 修改系统的时间呢
收藏 0 赞 0 分享

VBS For Next循环的一些细节

For Next 语句是 VBS 中常用的循环语句,你可能已经用过无数次 For Next 循环,但是你是否注意过它的一些细节呢
收藏 0 赞 0 分享

VBS For Next循环的陷阱分享

在《VBS For Next循环的一些细节》中说到了 For Next 循环的控制变量仅仅在循环开始前求值一次,但是其中存在一处陷阱
收藏 0 赞 0 分享
查看更多