WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 08.07.2002, 16:25   #1
mad
Jr. Member
 
Registriert seit: 08.07.2002
Beiträge: 50


Frage In VB Script Plattenplatz rausfinden

Für ne Sicherheitsabfrage in einem VB Script wollt ich wissen, ob & wenn wie man den Platz auf einer Festplatte ( C: ) rausfindet um den dann weiter zu verarbeiten. Danke!
mad ist offline   Mit Zitat antworten
Alt 08.07.2002, 17:19   #2
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Hab ich nur jetzt schnell aus einem Buch raus kopiert...
Weiß aber nicht obs funkt - wennst es ausprobiert hast, schreib einfach mal.

Code:
laufwerk = InputBox("Geben Sie den Laufwerksbuchstaben an!", "Laufwerk", _
"C:\")
ergebnis = FreeSpace(laufwerk)
if ergebnis<0 then
if ergebnis = -1 then
MsgBox "Es lag kein Datenträger im Laufwerk!",vbExclamation
elseif ergebnis = -2 then
MsgBox "Laufwerk " & laufwerk & " existiert nicht!",vbExclamation
end if
else
ergebnis2 = TotalSpace(laufwerk)
MsgBox "Freier Speicher auf Laufwerk " & _
laufwerk & ": "& FormatMB(ergebnis) & _
vbCr & "Speicherplatz insgesamt: "& _
FormatMB(ergebnis2), vbInformation
end if
function FreeSpace(lfw)
set fs = CreateObject _
("Scripting.FileSystemObject")
if fs.DriveExists(lfw) then
set lfwhandle = fs.GetDrive(lfw)
if lfwhandle.isReady then
FreeSpace = lfwhandle.FreeSpace
else
FreeSpace = -1
end if
else
FreeSpace = -2
end if
end function
function TotalSpace(lfw)
set fs = CreateObject("Scripting.FileSystemObject")
if fs.DriveExists(lfw) then
set lfwhandle = fs.GetDrive(lfw)
if lfwhandle.isReady then
TotalSpace = lfwhandle.TotalSize
else
TotalSpace = -1
end if
else
FreeSpace = -2
end if
end function
function FormatMB(bytes)
if bytes<1024 then
FormatMB = bytes & " Bytes"
elseif bytes<1024^2 then
FormatMB = FormatNumber(bytes/1024,2) & " KB"
elseif bytes<1024^3 then
FormatMB = FormatNumber(bytes/1024^2, 2) & " MB"
else
FormatMB = FormatNumber(bytes/1024^3, 2) & " GB"
end if
end function
renew ist offline   Mit Zitat antworten
Alt 08.07.2002, 22:37   #3
mad
Jr. Member
 
Registriert seit: 08.07.2002
Beiträge: 50


Standard Danke, daß probier ich sofort

mad ist offline   Mit Zitat antworten
Alt 08.07.2002, 23:13   #4
mad
Jr. Member
 
Registriert seit: 08.07.2002
Beiträge: 50


Standard Ausprobiert: Nur 2 GB

Diese Routine ist wohl eine der alten in Windows: die kennt nur maximal 2GB - Platten. Aber als Sicherheitsabfrage, wenn es zu eng wird, ist das allemal geeignet - danke!
mad ist offline   Mit Zitat antworten
Alt 09.07.2002, 10:13   #5
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

na immerhin weiß ich jetzt, dass es funkt, wenn ich sowas mal brauch.

Aber wundert mich, dass es auf 2GB limitiert ist, weil ich glaub, "alte Windosen" hatten ja noch keinen Scriptinghost....
renew ist offline   Mit Zitat antworten
Alt 09.07.2002, 10:43   #6
mad
Jr. Member
 
Registriert seit: 08.07.2002
Beiträge: 50


Blinzeln Rätselhaft

ist das schon, aber ich denke es liegt daran, daß für den ScriptingHost keine extra Windows-Routinen 'eingebaut' wurden, nur der VBS-Interpreter wird in Windows dazugekommen sein. Und der greift auf die - in dem Fall - alte Routine von Windows zu (hab ME).

wie du schon sagtest, in der IT-Branche...
mad ist offline   Mit Zitat antworten
Alt 09.07.2002, 10:47   #7
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Habs grad bei mir ausprobiert (Win2k): bei mir schriebt er alles korrekt an. Dürft wirklich an der alten ME Runtime liegen. Weil ich hab 1,6GB frei und 10GB Platz auf der Platte. Bei dir wird er den Plattenplatz wahrscheinlich eben auf die 2GB begrenzt haben.
renew ist offline   Mit Zitat antworten
Alt 09.07.2002, 10:55   #8
mad
Jr. Member
 
Registriert seit: 08.07.2002
Beiträge: 50


Standard Das wird es sein

und dabei hat ME doch soviel von 2000 übernommen
die explorer.exe meint z.B. sie sei die gleiche wie in 2k
das abschauen blieb wohl aber bei der schickeren Optik
mad ist offline   Mit Zitat antworten
Alt 09.07.2002, 13:12   #9
_m3
Inventar
 
Registriert seit: 24.09.2001
Beiträge: 7.335


Standard

http://msdn.microsoft.com/library/de...ofreespace.asp

Zitat:
When you use the AvailableSpace, FreeSpace, and TotalSize properties, the Drive object calls a Win32 function to perform the calculations. However, this function has a bug if you're using Win9x. The Win32 function truncates the amount of free space to 2GB.
http://www.winscriptingsolutions.com...ArticleID=7992
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org .
_m3 ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:27 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag