How to Determine the Disk Volume Label & Serial Number
http://www.mvps.org/vbnet/index.html?code/disk/volumelabel.htm
http://www.mvps.org/vbnet/index.html?code/disk/volumelabel.htm
解决方案 »
- 大家给看看问题出在哪?关于进程是否关闭的问题
- VB编译好后,运行环境是什么?一定要安装VB吗?
- 下拉菜单怎样加载txt文件内容
- 如何监视 局域网 里数据的传输 ??????????????
- VB中自带有不少控件,网上只找到动态加载Command控件的例子,我要的是加载DTPicker,应用何方法?
- 求VB 最短路径代码。高分送上
- DCOM的问题,Server端为ActiveX EXE,客户端调用时,如果调用频繁....
- 简单问题真诚求答案!
- 能不能在vb中使用sql语句时,只排序步重新open???
- 我将一个数据集,赋给listbox.datasouce,为什么listbox中不显示数据集中的值?
- 比较复杂的查询问题
- 双击MSHFlexGrid中的一行后怎样使这一行中的详细的数据显示在另一个窗体中
Dim drive$
drive = "c:"
MsgBox UCase(Replace(drive, ":", "")) + " 盘的序列号是" + FORMat(CreateObject("scripting.FileSystemObject").GetDrive(drive).SerialNumber)
注解:
1.FORMat(expression[, FORMat])若只用一个参数exp则按默认的方式将exp转换为字符串
2.CreateObject(class,[servername])创建并返回一个对 ActiveX 对象的引用。
class 参数使用 appname.objecttype 这种语法,包括以下部分:
部分 描述
appname 必需的;Variant(字符串)。提供该对象的应用程序名。
objecttype 必需的;Variant(字符串)。待创建对象的类型或类。 3.在程序中使用 FSO 对象模型来处理驱动器和文件夹,如同在“Windows 资源管理器”中能进行的交互方式一样。您可以复制和移动文件夹,
获得驱动器和文件夹的信息,等等。
如:驱动器序列号 (SerialNumber 属性)
FSO 对象模型包含在一个称为 Scripting 的类型库中,此类型库位于 Scrrun.Dll 文件中
例:
Dim fso As New FileSystemObject, drv As Drive, s As String
Set drv = fso.GetDrive(fso.GetDriveName("c:")) FSO 对象模型编程包括三项主要任务:
1).使用CreateObject 方法,或将一个变量声明为 FileSystemObject 对象类型来创建一个 FileSystemObject 对象。
2).对新创建的对象使用适当的方法。
3).访问该对象的属性。
要访问一个已有的驱动器、文件或文件夹,请使用 FileSystemObject 对象中相应的 "get" 方法: GetDrive 、GetFolder、GetFile 4. 一个 FileSystemObject 对象以便进行处理。可以通过如下两种方法完成:
1).将一个变量声明为 FileSystemObject 对象类型:
Dim fso As New FileSystemObject 2).使用 CreateObject 方法来创建一个 FileSystemObject 对象:
Set fso = CreateObject("Scripting.FileSystemObject")------注意
在上面的语法中, Scripting 是类型库的名称,而 FileSystemObject 则是想要创建一个实例的对象的名称。
注意 :第一种方法只在 Visual Basic 中有效,而第二种方法在 Visual Basic 或 VBScript 中都是可行的
5.综上所述:编这个程序的人一定对vb熟透了,所以能以最简便的方法写出这个程序段。他先用CreatObject()函数创建并返回一个FSO对象的引用
既CreateObject("scripting.FileSystemObject")然后用这FileSystemObject个对象访问一个已有的驱动器GetDrive(drive)并获得硬盘序列号:
SerialNumber
最后再用FORMat转换成字符串用MsgBox输出:
MsgBox UCase(Replace(drive, ":", ""))+"盘的序列号是"+FORMat(CreateObject("scripting.FileSystemObject").GetDrive(drive).SerialNumber
真是精简得3不能再精简了,
我都是从MSDN上翻来的,翻了半天了,不知有没有写明白:)