2010-10-12 14 views
0

問題似乎與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

好,所以技巧似乎是使用文件系統對象的磁盤屬性,而不是w32_logicaldisk屬性。使用FSO,所有數字都是準確的。

相關問題