Ich versuche in C++ unter Windows eine Liste der im PC vorhandenen Laufwerke und jeweils ein paar Basisinfos dazu auszugeben.
Das Meiste bekomme ich schon auf die Reihe, aber ein paar Dinge finde ich nicht raus.
Mit getListOfDrives() bekomme ich einen Vector mit den Laufwerksbuchstaben.
Mit FindFirstFile() und einer do .. while Schleife bekomme ich den Inhalt des Laufwerks, also Ordner und Dateien, die kann ich zählen, bei Bedarf noch eine weitere, verschachtelte Schleife die Unterordner öffnet und liest, alles so weit kein Problem, auch die Liste von Ordnern und Dateien ausgeben habe ich fast auf Anhieb hinbekommen.
Was ich nicht weiss ist, ob ich die reine Anzahl von Ordnern und Dateien ohne deren Namen dazu wirklich in einer Schleife selber zählen muss, oder ob es bei Microsoft eine Abfrage als fertige Funktion dafür gibt?
Wo ich mich dann richtig schwer tue sind die Basisinfos des Laufwerks, also Gesamtgrösse der Platte und der einzelnen Partitionen, belegter Platz, verbleibender freier Platz, denn da sehe ich den Wald vor lauter Bäumen nicht.
Bei Microsoft finde ich derartige Unmengen von verschiedenen Funktionen, dass ich nicht mal entscheiden kann welche davon ich nun nehmen soll und wenn ich dann mal eine ausprobiere, dann bringe ich die Syntax nicht auf die Reihe.
GetDiskFreeSpace(), oder DeviceIoControl() mit IOCTL_DISK_GET_LENGTH_INFO, oder GetVolumeInformation() und was sonst sich Microsoft an Namen für die Funktionen hat einfallen lassen.
Hat Jemand Erbarmen und vielleicht auch ein kleines Stückchen Code mit dem ich die Basisinfos eines Laufwerks auslesen kann?
Das Meiste bekomme ich schon auf die Reihe, aber ein paar Dinge finde ich nicht raus.
Mit getListOfDrives() bekomme ich einen Vector mit den Laufwerksbuchstaben.
Mit FindFirstFile() und einer do .. while Schleife bekomme ich den Inhalt des Laufwerks, also Ordner und Dateien, die kann ich zählen, bei Bedarf noch eine weitere, verschachtelte Schleife die Unterordner öffnet und liest, alles so weit kein Problem, auch die Liste von Ordnern und Dateien ausgeben habe ich fast auf Anhieb hinbekommen.
Was ich nicht weiss ist, ob ich die reine Anzahl von Ordnern und Dateien ohne deren Namen dazu wirklich in einer Schleife selber zählen muss, oder ob es bei Microsoft eine Abfrage als fertige Funktion dafür gibt?
Wo ich mich dann richtig schwer tue sind die Basisinfos des Laufwerks, also Gesamtgrösse der Platte und der einzelnen Partitionen, belegter Platz, verbleibender freier Platz, denn da sehe ich den Wald vor lauter Bäumen nicht.
Bei Microsoft finde ich derartige Unmengen von verschiedenen Funktionen, dass ich nicht mal entscheiden kann welche davon ich nun nehmen soll und wenn ich dann mal eine ausprobiere, dann bringe ich die Syntax nicht auf die Reihe.
GetDiskFreeSpace(), oder DeviceIoControl() mit IOCTL_DISK_GET_LENGTH_INFO, oder GetVolumeInformation() und was sonst sich Microsoft an Namen für die Funktionen hat einfallen lassen.
Hat Jemand Erbarmen und vielleicht auch ein kleines Stückchen Code mit dem ich die Basisinfos eines Laufwerks auslesen kann?