说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB6编程中如何获取硬盘分区信息

HTML文档下载 WORD文档下载 PDF文档下载
VB6编程中如何获取硬盘分区信息

  也许你并不了解硬盘分区信息应该包括些什么,但如果你曾经对硬盘分过区,你或许对此有所了解,在此为各位介绍一个用VB编写的获取硬盘分区信息的程序。在这个程序中,它将详细地告诉你:你的硬盘总容量、分过几个区、每个区的总容量、及现在剩余的可用容量、硬盘分区表为几位(即是FAT32还是FAT16),每个分区是几个字节……怎么样?够完整详细了吧!好的,就让我们一起来看一下吧:
  首先做准备工作:在FORM1上新建二个LABEL(LABEL1和LABEL2)一个COMMAND1命令按钮。然后输入以下代码:
  Private Declare Function GetDriveType Lib
  kernel32“Alias "GetDriveTypeA(ByVal nDrive As String) As Long
  Private Declare Function GetDiskFreeSpace Lib“kernel32" Alias“GetDiskFreeSpaceA" (ByVal lpRootPathName As String, lpSectorsPerCluster As Long, lpBytesPerSector As Long, lpNumberOfFreeClusters As Long, lpTtoalNumberOfClusters As Long) As Long
  Private Const DRIVE_FIXED = 3
  Private Sub Form_Load() '作初始化设置
  COMMAND1.Caption = “测试硬盘"
  Form1.Caption = “测试硬盘程序"
  Label1.WordWrap = True
  Label1.Caption = “"
  Label2.WordWrap = True
  Label2.Caption = “"
  End Sub
  Private Sub COMMAND1_Click()
  Dim DriveNum As Integer
  Dim TempDrive As String
  Dim X As Long
  For DriveNum = 97 To 122 Step 1 '检测从A-Z(盘符)
  TempDrive = GetDriveType(Chr(DriveNum) & “:\")
  Select Case TempDrive '如是3则表示是硬盘,测试你有几个盘
  Case 3: X = GetDiskSpace(Chr(DriveNum)) '调用子程序
  End Select
  Next DriveNum
  End Sub
  Public Function GetDiskSpace(DrivePath As String)
  Dim Drive As String
  Dim SectorsPerCluster As Long
  Dim BytesPerSector As Long
  Dim NumberOfFreeClusters As Long
  Dim TotalClusters As Long
  Dim Check As Integer
  Dim DiskSpace
  Dim diskTotal
  Static AllDiskTotal As Long
  Static NUM As Integer
  NUM = NUM + 1 '分几个区的计算
  Drive = Left(Trim(DrivePath), 1) & “:\"
  Check = GetDiskFreeSpace(Drive, SectorsPerCluster, BytesPerSector, NumberOfFreeClusters, TotalClusters)
  If Check <> 0 Then
  DiskSpace = SectorsPerCluster * BytesPerSector * NumberOfFreeClusters
  '这是一个分区磁盘剩余空间的计算公式
  DiskSpace = Format$(DiskSpace, “###,###") '以规定格式显示,如732,324,231
  diskTotal = SectorsPerCluster * BytesPerSector * TotalClusters
  '这是一个分区磁盘总容量的计算公式
  diskTotal = Format$(diskTotal, “###,###")
  AllDiskTotal = AllDiskTotal + diskTotal '整个硬盘的总容量
  Label1.Caption =“你的硬盘总容量为:” & Format$(AllDiskTotal,“###,###") &个字节,即:” & Left(AllDiskTotal, 1) & . & Mid(AllDiskTotal, 2, 1) &“G,一共分了”& NUM &“个区,其中:"
   Label2.Caption = Label2.Caption & UCase(DrivePath) & “盘的整个容量为:" & diskTotal &“个字节" & ",其剩余磁盘空间为:“& DiskSpace & " 个字节,磁盘已FAT“& SectorsPerCluster & ",每个分区为:“& BytesPerSector & "个字节。“& vbCrLf & vbCrLf”
  End If
  End Function
  OK!现在你运行一下,你是否满意它?
  注:以上程序在中文WINDOWS98,中文VB6.0企业版中调试通过。(上海 季昭君)
Intel将在2014年为数据中心用户定制低功耗SoC芯片 情绪低落?没事,让计算机来帮你! 水果生意难做 前新浪架构师徐佳转行试水挖煤 思考软件开发中的快与慢 Apache CouchDB注入新鲜血液,整合分布式技术 触发器的问题。 数据库本地访问保护的问题 高分拜送前辈高人,我的EJB部署完成后JNDI树的问题?(在线等待) 在使用静态ip的局域网内,已知IP地址,如何得到它的主机名? 我想问一下win98 下怎么运行c#程序,是不是安装好framework就可以了?需不需要安装pws? 支持ibm olap server 的前端展示产品有哪些 [ 高手进 ] 在Unix下,有什么反汇编工具? 金山词霸中日英版 请问如何用JavaScript在网页中“一回车”就寻找“确定”按钮 高数计算题,设y=e²sin2x求y,e 如图所示AB为两块带有等量异种电荷的平行金属板,两 下列科学考察站中,属于我国,并且有极昼极夜现象的是 我国已在南极建立了科学考察站,其中有极昼极夜的是( 孔子的小故事(每个不超过70字) 求解微分方程:2x(ye∧x²+2x&# 2013考研英语一理科A区国家线高人预测下,不要随 已知空气的击穿场强为3.0×10的六次方V每米,在 手指压物体,物体静止,所受压力大于重力,若是,为何 俄罗斯兴起“护花行动”保护夜行年轻女快讯:浙江黄岩一企业起火 2人跳窗逃嘉兴国际名品城工地脚手架坍塌 工人1当代女画家王玮百幅弥勒造像回乡展在浙日本一老妇睡梦中手脚被绑 300万日听说P2P平台这么做能躲过“四十七条P2P监管细则十大悬疑世道变坏,从备胎被人撬走开始迎新年,A股走势乐观起底九鼎系:以“债换股”模式解地产融寂灭苍穹天龙王霸道总裁:劫个老公生宝宝今天开始扮恶魔崛起于战后日本阿巴嘎旗旅游疏勒旅游安仁旅游水里旅游察瓦龙旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘