怎么获取某个目录所占空间的大小?

yanjiao1974 2007-09-10 12:00:16
VB怎么获取某个目录(含子目录)所占空间的大小?
不想挨个加文件的大小啊
...全文
107 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hongqi162 2007-09-10
  • 打赏
  • 举报
回复
引用Microsoft Scripting RunTime

Private fsoTest As New FileSystemObject
Private folder1 As Folder
-----------------------
Set folder1 = fsoTest.GetFolder("d:\")
debug.print folder1.Size/1024/1024
hongqi162 2007-09-10
  • 打赏
  • 举报
回复
用Api计算。

在外面dim 一个Double Totalsize
dim TotalSize as Double

Private Sub GetFolderSize(ByVal PathName As String)
On Error Resume Next

Dim SearchName As String
Dim Find_Data As WIN32_FIND_DATA
Dim lhandle As Long, ret As Long

Dim Filehandle As Long
Dim i As Long

SearchName = PathName & "\*.*"
lhandle = FindFirstFile(SearchName, Find_Data)
ret = lhandle

Do While ((ret <> 0) And Running)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'handle the file here
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
If (Find_Data.lFileAttributes And FILE_ATTRIBUTE_DIRECTORY) <> 0 Then

If (Left(Find_Data.cFileName, 1) <> ".") Then 'is a directory
'Debug.Print Pathname & "\" & TrimZeroSuffix(Find_Data.cFileName) & "\"
Call Addfiles(PathName & "\" & TrimZeroSuffix(Find_Data.cFileName), ID)
End If

Else
'is a file
'handle the file here
TotalSize =TotalSize + ConvertSize(Find_Data.nFileSizeHigh, Find_Data.nFileSizeLow)

'Debug.Print Pathname & "\" & TrimZeroSuffix(Find_Data.cFileName)
End If
DoEvents
ret = FindNextFile(lhandle, Find_Data)
CountX = CountX + 1

Loop

FindClose (lhandle)
End Sub
嗷嗷叫的老马 2007-09-10
  • 打赏
  • 举报
回复
啊扑

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧