Seite 1 von 1
Laufwerkskapazitäten
Verfasst: 10.11.2004 16:55
von Jogi
Hallo,
wie kann ich mit PureBasic beispielsweise die Kapazität einer eingelegten CD herausfinden und wie viel Platz auf dem Medium schon belegt ist?
Danke schon mal im Voraus,
Daniel
Verfasst: 10.11.2004 21:25
von Deeem2031
Code: Alles auswählen
Debug GetDiskFreeSpaceEx_("C:",FreeBytesAvailable.ULARGE_INTEGER,TotalNumberOfBytes.ULARGE_INTEGER,TotalNumberOfFreeBytes.ULARGE_INTEGER)
Debug FreeBytesAvailable\LowPart
Debug FreeBytesAvailable\HighPart
Debug TotalNumberOfBytes\LowPart
Debug TotalNumberOfBytes\HighPart
Debug TotalNumberOfFreeBytes\LowPart
Debug TotalNumberOfFreeBytes\HighPart
Hab nur grad keine Proc parat die dir das ganze als String-Zahl ausgibt..
Verfasst: 11.11.2004 16:35
von MLK
wenn es nur um eine cdrom geht, dann kann man ruhig longs verwenden. problem ist, dass nicht die cd selber untersucht wird, sondern das laufwerk.
Code: Alles auswählen
*Buffer=AllocateMemory($FF)
For i=0 To GetLogicalDriveStrings_($FF,*Buffer) Step 4
CDROM.s=PeekS(*Buffer+i,4)
If GetDriveType_(@CDROM)=#DRIVE_CDROM
Break
EndIf
Next
GetDiskFreeSpaceEx_(CDROM,0,@TotalSpace,@FreeSpace)
Debug CDROM
Debug Str(FreeSpace)+" Bytes free"
Debug Str(TotalSpace)+" Bytes total"
da hilft wohl nur noch, von einer 700er auszugehen und den belegten speicher selber zusammenzuzählen.
LongValuesString
Verfasst: 16.11.2004 01:08
von jear
Wer will, kann sich
hier gerne eine PureLibrary herunterladen (14KB) die diese Aufgabe erledigt.
Dabei sind auch die großen Zahlen kein Problem, die Library liefert Strings. Auch die Ermittlung der Dateigröße von Dateien jenseits 2 GB ist kein Problem
Dokumentierte Beispiele sind dabei.