Test ob genügend Speicherplatz vorhanden ist
-
Hallo,
ich suche einige Ideen oder Codeschnippsel, wie man den
Speicherplatz eines Laufwerks (z.B: Festplatte C:) bestimmen kann.
Also Informationen zu diesem Laufwerk in Form von Quellcode
abgerufen werden können.Ich hoff auf Euch

-
-
vielen Dank
-
die funktionen unter dem link funktionieren nur im borland c++ builder (ich
soll dev-C++ nutzen) und auch nur unter windows (programm sollen portabel zu unix und linux zusätzlich sein)über weitere und baldige vorschläge wär ich sehr dankbar
-
Hallo
Die Kernfunktionen funktionieren auf jedem Windows-C Compiler, denn die sind natürlich aus der WinAPI. Denn C++ kennt keine LKaufwerke oder Speichergrößen.
Deshalb must du plattformspezifische Funktionen benutzen. Du kannst aber plattformübergreifende Wrapper benutzen, wie zum Beispiel die aus der boost-Bibliothek.
bis bald
akari
-
Dann musst du für jedes gewünschte OS eine spezielle Lösung implementieren...
[edit]
hm, zu spät
grüße
-
klingt alles gut und nett, hab aber keine idee, wie ich das realisieren soll.
bräuchte da noch ein bissel mehr hilfe.
wenn möglich ohne spezielle implementierungen von aussen.
vor allem quellcode wär praktisch.
gruß
-
klubbi schrieb:
vor allem quellcode wär praktisch.
Faules individuum...
#include <iostream> #include <windows.h> using namespace std; int main( ) { char *disk = "C:\\"; __int64 available_to_caller; __int64 num_bytes; __int64 num_free_bytes; GetDiskFreeSpaceEx( disk, reinterpret_cast< ULARGE_INTEGER* >( &available_to_caller ), reinterpret_cast< ULARGE_INTEGER* >( &num_bytes ), reinterpret_cast< ULARGE_INTEGER* >( &num_free_bytes ) ); cout << num_free_bytes / 1024 / 1024 << " megabytes of total "; cout << num_bytes / 1024 / 1024 << " megabytes available at drive " << disk << endl; }Greetz, Swordfish
-
Hier die BSD UNIX Variante:
http://www.openbsd.org/cgi-bin/man.cgi?query=statfs&sektion=2&arch=i386&apropos=0&manpath=OpenBSD+CurrentVielleicht auch auf Linux anwendbar.
Vielleicht gibt es auch eine bessere Variante (can be)Gg