davidy Geschrieben 20. Januar 2010 Teilen Geschrieben 20. Januar 2010 Hi, ich nutze in einer Batch Datei den "dir C: /-c" Befehl um den FREIEN Speicher als Bytes zu erhalten. Aber wie bekomme ich (möglichst ohne Zusatztools, nur mit Hilfe der normalen unter Windows >= XP), den GESAMTEN, oder den BELEGTEN Speicher eines Laufwerks? (kann man ja umrechnen:-)) Gruß Davidy Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tester2k5 Geschrieben 20. Januar 2010 Teilen Geschrieben 20. Januar 2010 Mit einem VB-Script: '-------------------------------------------------------------------- ' Description '-------------------------------------------------------------------- ' Reports the size and free disk space of each drive from the current Computer '-------------------------------------------------------------------- ' Declarations '-------------------------------------------------------------------- Option Explicit 'On Error Resume Next const bytesToMB = 1048576 const bytesToGB = 1073741824 const bytesToTB = 1099511627776 '-------------------------------------------------------------------- ' Variables '-------------------------------------------------------------------- Dim strComputer: strComputer = "." '--------------------------------------------------------------------- ' Script '--------------------------------------------------------------------- Dim objWMIService: Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Dim colItems: Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk") Dim objItem For Each objItem In colItems If objItem.Size > 1 Then If objItem.FreeSpace > 0 Then WScript.Echo objItem.Name & " " & ConvertToDiskUnit(objItem.Size) & " (" & ConvertToDiskUnit(objItem.FreeSpace) & " Free)" End If End If Next '--------------------------------------------------------------------- ' Function '--------------------------------------------------------------------- Function ConvertToDiskUnit(value) IF (value/bytesToTb) > 1 THEN ConvertToDiskUnit = round(value/bytesToTB,1) & " TB" ELSEIF (value/bytesToGb) > 1 THEN ConvertToDiskUnit = round(value/bytesToGB,1) & " GB" ELSEIF (value/bytesToMb) > 1 THEN ConvertToDiskUnit = round(value/bytesToMB,1) & " MB" ELSE Exit Function END IF End Function Für den belegten, kannst du ja den Freien vom Totalen abziehen. Guss, tester2k5 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.