问题似乎与Win32_LogicalDisk类的可用空间属性有关,因为它只显示当前登录用户拥有的权限,而不是实际存在的可用空间。
示例代码,但不完全是necc:
Set objLogicalDisk = objWMIService.Get("Win32_LogicalDisk.DeviceID='Z:'")
' server share, total disk size, total disk free, percent free
tmpStatus = tmpStatus & arrShares(i) & "," & FormatNumber((objLogicalDisk.size / GBCONVERSION),,-1) & "," & _
FormatNumber((objLogicalDisk.FreeSpace / GBCONVERSION),,-1) & "," & _
((objLogicalDisk.FreeSpace / GBCONVERSION) / (objLogicalDisk.size / GBCONVERSION) * 100) & "@"
注意:这适用于虚拟服务器网络共享,因此驱动器类型为4
有更好的方法吗?同样,总驱动器空间是正确的,但是从我在MSDN上找到的空闲空间开始,它使用当前用户的权限来确定可用空间。必须有另一种/更好的方式。
答案 0 :(得分:0)
好的,所以诀窍似乎是使用文件系统对象磁盘属性而不是w32_logicaldisk属性。使用FSO,所有数字都是准确的。