Verfügbaren Speicherplatz ermitteln?
Übersicht

![]() |
KryanBetreff: Verfügbaren Speicherplatz ermitteln? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
ich will wissen, wie man den übrigen Speicherplatz auf Laufwerk C: ermitteln kann Vielen Dank für die Hilfe |
||
Webspaceanbieter?
Klick hier! Kultige Spieleschmiede? Klick hier! |
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] ;.lib "kernel32.dll" ;GetDiskFreeSpaceEx%(lpRootPathName$,lpFreeBytesAvailableToCaller*,lpTotalNumberOfBytes*,lpTotalNumberOfFreeBytes*):"GetDiskFreeSpaceExA" b1=CreateBank(8) ;Frei Bytes, die für den User aktiv sind.... b2=CreateBank(8) ;Gesamtspeicherplatz b3=CreateBank(8) ;Freier Speicherplatz Notify GetDiskFreeSpaceEx("C:\",b1,b2,b3) w1=PeekInt(b2,0) w2=PeekInt(b2,4) e1$ = Multiplizieren(Str(w2),"4294967296") e2$ = Addieren(e1,Str(w1)) Notify e2 Function Multiplizieren$ (Wert1$,Wert2$) For i = 1 To Len (wert1$) Multipli% = Mid (wert1$,i ,1) dummy2$ = Wert2$ While Len (dummy2$) > 7 Akwert = Right (dummy2$,7) dummy2$ = Left (wert2$,Len (dummy2$) - 7) erg = Multipli% * Akwert + rest% If erg > 9999999 Then rest% = Left (erg ,1) erg = Right (erg ,7) Else rest = 0 End If If Len (Str (erg) ) < 7 Then ZwWert$ = Replace (RSet (erg,7) ," ","0") + ZwWert$ Else ZwWert$ = Replace (RSet (erg,7) ," ","0") + ZwWert$ End If Wend ;############### rest% = Multipli% * Int (dummy2$) + rest% ZwWert$ = rest% + ZwWert$ rest = 0 If Len(dummy$) Then dummy$ = Addieren$ (ZwWert$ ,Dummy$ + "0") Else dummy$ = ZwWert$ End If ZwWert$ = "" Next Return dummy$ End Function Function Addieren$ (Wert1$,Wert2$) If Len (wert1$) > Len (wert2$) Then wert2$ = RSet (wert2$,Len (wert1$) ) Else wert1$ = RSet (wert1$,Len (wert2$) ) End If While Len (wert1$) > 8 zw$ = (Int (Right (wert1$,8) ) + Int (Right (wert2$,8) ) + c%) If Len (zw) < 9 Then zw = Replace (RSet (zw,8) ," ","0") If Len (zw$) > 8 Then c% = 1 zw$ = Mid (zw$,2) Else c% = 0 End If returnWert$ = Right (zw$,8) + returnWert$ wert1$ = Left (wert1$ , Len (wert1$) - 8) wert2$ = Left (wert2$ , Len (wert2$) - 8) Wend Return (Int (wert1$) + Int (wert2$) + c) + returnWert$ End Function Die beiden Funktionen Addieren und Multipliziernen sind von Rallimen.... Quelle: http://msdn.microsoft.com/libr...paceex.asp |
||
![]() |
Kryan |
![]() Antworten mit Zitat ![]() |
---|---|---|
^^ ich kenne mich noch nicht so mit dll's aus
und wenn ich das so starte geht es mit B3d und B+ nicht ![]() Wie geht das? |
||
Webspaceanbieter?
Klick hier! Kultige Spieleschmiede? Klick hier! |
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] .lib "kernel32.dll" GetDiskFreeSpaceEx%(lpRootPathName$,lpFreeBytesAvailableToCaller*,lpTotalNumberOfBytes*,lpTotalNumberOfFreeBytes*):"GetDiskFreeSpaceExA" Also, das tust du in den decls-ordener, mit einem Beliebigen Namen, zB. speicherplatz.decls Dann startest du Blitz3d/blitz+ (neu). jetzt sollte der Code funzen.... |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Leichenschänder ![]() Ich versuche den Freien Speicherplatz zu ermitteln, dann mache ich die 2 PeekInt auf b3. Funktioniert super, jedoch nur auf der Partition C:\, bei den anderen ist es immer etwas zu wenig. Jemand Ideen? mfg |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
flona |
![]() Antworten mit Zitat ![]() |
---|---|---|
Um wie viel weicht der wirkliche denn vom zurückgegebenen Wert ab ![]() |
||
www.Dreier-Florian.kilu.de
Intel Core 2 Quad Q9400 | Zotac 9800GT | 4GB RAM | 1TB HDD | Windows 7 Professional 32bit |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bei 2 Laufwerken um 4251737600 beim 3ten um 4189220864.
Kann es dran liegen das es Partitionen sind? (sollte ja ned :O) mfg schaade das niemand weis wieso. egal habs jetzt so gelöst: Code: [AUSKLAPPEN] ExecFile ("cmd /C dir C:\ -/C > D:\temp.dat")
Daraus filtere ich den Rest, bäh |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group