You are here : Start WSH - VBS Laufwerke ausgeben - ansprechen

Laufwerke ausgeben - ansprechen

Laufwerkseigenschaften ausgeben

Probleme beim Zuweisen der Parameter:

Option Explicit

Dim s, driv, fso
Const
c = "C:"

Set
fso = Createobject("Scripting.FileSystemObject")
s = "c:"
'Durch ein Zuweisung des Laufwerks per Variable wird ein Laufzeitfehler ausgeführt

Set
driv = fso.drives(s)

'Folgendes Funktioniert'
'-----------------------
'Ein Zuweisung des Laufwerksbuchstabens als Variable und : als Konstante ist korrekt
s = "c"
Set driv = fso.drives(s & ":")
'ODER
'Ein Zuweisung des Laufwerksbuchstabens per Konstante ist korrekt
Set driv = fso.drives("c:")
'ODER
Set driv = fso.drives(c)



Eigenschaften aller Laufwerke ausgeben

Option Explicit

Dim WshShell, fso, FileOut, DriveList, oDrive, i, j

Dim s, s1, s2, sb
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
Set DriveList = fso.Drives

' Protokoll in Datei schreiben
Set FileOut = fso.OpenTextFile(WScript.ScriptName & ".log", 8, True) ' Datei zum Schreiben öffnen (notfals anlegen)
fileOut.WriteLine(vbCRLF & now() & " Protokoll von " & WScript.ScriptName & ": ")

For Each oDrive In DriveList

With oDrive

select Case .DriveType

Case 0 : s1 = "???"

Case 1 : s1 = "USB-Lw. "

Case 2 : s1 = "Festpl. "

Case 3 : s1 = "Netz-Lw."

Case 4 : s1 = "CD-Lw. "

Case 5 : s1 = "RAM-Lw. "

End Select

s = s & s1 & vbTab & .DriveLetter & ":" & vbTab 'c

's = s & vbTab & oDrive.rootfolder & vbTab 'c:\
's = s & vbTab & oDrive.path & vbTab 'c:

If .IsReady Then

s1 = .volumename

sb = 0

For i = 1 To Len(s1)

j = Asc(Mid(s1, i, 1))

If j > 64 AND j < 91 Then

sb = sb + 1

End If

Next

If s1 = vbNullString Then

s1 = s1 & vbtab

ElseIf sb => 8 AND s1 "DISKETTE" Then

ElseIf sb < 8 Then

s1 = s1 & vbtab

ElseIf sb < 3 AND len(s1) < 12 Then

s1 = s1 & vbtab & vbtab

else

s1 = s1 & vbtab

End If

s = s & s1 & vbtab

s1 = FormatNumber(.FreeSpace/1024/1024, 1)

If s1 = vbNullString Then s1 = "???"

s = s & "MB frei: " & s1 & vbTab & " MB Total: "

s1 = FormatNumber(.TotalSize/1024/1024, 1)

If s1 = vbNullString Then s1 = "???"

If len(s1)< 9 Then s1 = s1 & vbtab

s = s & s1 & vbTab & .filesystem & vbTab & " SN: " & .serialnumber

End If

End With

fileOut.WriteLine(s)

s = s & vbCrLf
Next
FileOut.Close

MsgBox s, , WScript.ScriptName


 
JoomlaTheme.net