检测磁盘类型的信息
2006-02-27 11:51:31 来源:WEB开发网核心提示:磁盘类型的检测是很有意义的,比如,检测磁盘类型的信息,安装程序要懂得用户所指定的磁盘是否为硬盘,不是则予以提示;又比如,那么,如何检测磁盘的类型呢?Windows的GetDriveType函数就是为获取磁盘类型而准备的,要自动播放光盘中的音频文件或影视文件,首先得判断光驱的驱动器号才得以实现
磁盘类型的检测是很有意义的。比如,安装程序要懂得用户所指定的磁盘是否为硬盘,不是则予以提示;又比如,要自动播放光盘中的音频文件或影视文件,首先得判断光驱的驱动器号才得以实现。那么,如何检测磁盘的类型呢?
Windows的GetDriveType函数就是为获取磁盘类型而准备的,利用它可以轻而易举地得到我们所需的磁盘类型信息。以下以一个简单的例子展示获取压缩盘以外的常规磁盘的类型这一有用的技术:
OptionExplicit
'申明API函数
PRivateDeclareFunctionGetDriveTypeLib"kernel32"Alias"GetDriveTypeA"(ByValnDriveAsString)AsLong
PrivateSubForm_Load()
'声明变量
DimDrvNumAsSingle
DimdrvNameAsString
DimDrvTypeAsInteger
DimiAsInteger
Me.AutoRedraw=True
Drive1.Visible=False
'获取所有常规磁盘信息——
DrvNum=Asc("a")-1
Fori=0ToDrive1.ListCount
DrvNum=DrvNum 1
drvName=Chr(DrvNum) ":\"
DrvType=GetDriveType(drvName)
SelectCaseGetDriveType(drvName)
Case0
Me.Print"不明" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case2
Me.Print"软驱" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case3
Me.Print"硬盘" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case4
Me.Print"网络盘" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case5
Me.Print"光驱" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case6
Me.Print"RamDisk" "盘符为:" Trim(UCase(Chr(DrvNum)))
EndSelect
Nexti
EndSub->
Windows的GetDriveType函数就是为获取磁盘类型而准备的,利用它可以轻而易举地得到我们所需的磁盘类型信息。以下以一个简单的例子展示获取压缩盘以外的常规磁盘的类型这一有用的技术:
OptionExplicit
'申明API函数
PRivateDeclareFunctionGetDriveTypeLib"kernel32"Alias"GetDriveTypeA"(ByValnDriveAsString)AsLong
PrivateSubForm_Load()
'声明变量
DimDrvNumAsSingle
DimdrvNameAsString
DimDrvTypeAsInteger
DimiAsInteger
Me.AutoRedraw=True
Drive1.Visible=False
'获取所有常规磁盘信息——
DrvNum=Asc("a")-1
Fori=0ToDrive1.ListCount
DrvNum=DrvNum 1
drvName=Chr(DrvNum) ":\"
DrvType=GetDriveType(drvName)
SelectCaseGetDriveType(drvName)
Case0
Me.Print"不明" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case2
Me.Print"软驱" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case3
Me.Print"硬盘" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case4
Me.Print"网络盘" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case5
Me.Print"光驱" "盘符为:" Trim(UCase(Chr(DrvNum)))
Case6
Me.Print"RamDisk" "盘符为:" Trim(UCase(Chr(DrvNum)))
EndSelect
Nexti
EndSub->
更多精彩
赞助商链接