Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

VBScript um die Ordnergrösse auszulesen - Script verreckt

Frage Entwicklung VB for Applications

Mitglied: TuXHunt3R

TuXHunt3R (Level 3) - Jetzt verbinden

20.04.2009, aktualisiert 16:58 Uhr, 2567 Aufrufe

Hallo ans Forum

Ich schreibe gerade an einem kleinen Script, welches die Grösse des Desktops und des "Documents"-Ordner jedes Profils eines Remotecomputers ausgibt.
Leider verreckt das Script immer bei den Dateiordnern "My Videos", "My Pictures" und "My Music". Mir ist klar, dass es sich dabei nicht um richtige Ordner, sondern um virtuelle handelt.
Das Script bringt allerdings immer die Meldung "Laufzeitfehler in Microsoft VBScript: Erlaubnis verweigert.", sobald die Schleife mit diesen virtuellen Ordnern in Kontakt kommt.

Die Betriebssysteme sind beide Vista, d.h. mein Client und auch der Remoteclient.
Pfad der genannten virtuellen Ordner: \\RemoteComputer\c$\users\%username%\Documents

Diese virtuellen Ordner sind standardmässig versteckt.

Hier das Script:
01.
Set objNetwork = CreateObject("Wscript.Network") 
02.
set objShell = WScript.CreateObject("WScript.Shell") 
03.
set objFilesystem = Wscript.CreateObject("Scripting.FileSystemObject") 
04.
 
05.
 
06.
size = 0 
07.
strComputer = wscript.arguments(0) 
08.
 
09.
if funPing(strComputer) = True Then 
10.
		wscript.echo "Knotenname: " & strComputer 
11.
		wscript.echo " " 
12.
		Set objProfilefolder = objFilesystem.GetFolder("\\" & strComputer & "\c$\Users\") 
13.
		For Each SubFolder In objProfilefolder.SubFolders 
14.
			Profil = SubFolder 
15.
			Set objProfil = objFilesystem.GetFolder(Profil) 
16.
			Select Case objProfil.path 
17.
                                                                                     ' Excludes: 
18.
				Case "\\" & strComputer & "\c$\Users\All Users" 
19.
				Case "\\" & strComputer & "\c$\Users\AutoInst" 
20.
				Case "\\" & strComputer & "\c$\Users\Default" 
21.
				Case "\\" & strComputer & "\c$\Users\Default User" 
22.
				Case "\\" & strComputer & "\c$\Users\L-Install" 
23.
				Case "\\" & strComputer & "\c$\Users\s-it32sDs" 
24.
				Case "\\" & strComputer & "\c$\Users\s-SMS-Hlp" 
25.
				Case Else 
26.
					Set objDesktop = objFilesystem.GetFolder(objProfil.path & "\Desktop\") 
27.
					Size = objDesktop.Size / 1024 ' Ergibt KB 
28.
					Size = Size / 1024 ' Ergibt MB 
29.
					wscript.echo objDesktop.Path & ";" & round(Size, 3) 
30.
					Size = 0 
31.
					 
32.
					set objMyDocs = objFilesystem.GetFolder(objProfil.path & "\Documents\") 
33.
					Size = objMyDocs.Size / 1024 ' Ergibt KB 
34.
					Size = Size / 1024 ' Ergibt MB 
35.
					wscript.echo objMyDocs.Path & ";" & round(Size, 3) 
36.
					Size = 0 
37.
			End Select 
38.
		Next 
39.
	Else  
40.
		wscript.echo "Das OS auf " & strComputer & " wird nicht unterstützt!" 
41.
		wscript.echo " " 
42.
		wscript.quit(0) 
43.
	End if  
44.
Else 
45.
	wscript.echo strComputer & " ist nicht pingbar!" 
46.
	wscript.echo " " 
47.
	wscript.quit(0) 
48.
End if 
49.
 
50.
 
51.
 
52.
 
53.
 
54.
'_____________________________________ 
55.
' Funktionen: 
56.
' =========== 
57.
 
58.
Function funPing(strComputer) 'Ping-Funktion. "funPing" ist "True", wenn das Gerät pingbar ist und "False", wenn das Gerät nicht erreichbar ist. 
59.
	rv = objShell.run("%systemroot%\system32\ping.exe -n 1 " & strComputer,,True) 
60.
	If rv=0 Then 
61.
		funPing = True 
62.
	Else 
63.
		funPing = False 
64.
	End If 
65.
End Function
Was ich auch angedacht habe: Mittels einer Funktion wird rekursiv die Grösse jedes Files in den beiden Pfaden \\Remotecomputer\c$\users\%username%\Desktop und \\Remotecomputer\c$\users\%username%\Documents ausgelesen und zusammengezählt. Hier könnte ich mittels eines Select Case die drei virtuellen Ordner ausklammern. Dies möchte ich allerdings vermeiden, da das Script dann sehr lange laufen würde, vor allem bei WAN-Leitungen mit maximal 512 kbit/s, wie wir sie teilweise noch laufen haben.

Habt ihr eine Idee, wie ich diese virtuellen Ordner umgehen kann?

Gruss TuXHunT3R
Ähnliche Inhalte
Windows 7
gelöst VBScript - HTML Probleme mit Schriftgröße (5)

Frage von MedicalAd zum Thema Windows 7 ...

Batch & Shell
gelöst PowerShell Ordnergröße Skript ignoriert versteckte Dateien (3)

Frage von Giffas zum Thema Batch & Shell ...

Outlook & Mail
gelöst LDAP Anfrage um E-mail auszulesen (6)

Frage von Jallio zum Thema Outlook & Mail ...

VB for Applications
gelöst VBScript und OR (5)

Frage von Invisan zum Thema VB for Applications ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Server-Hardware
HP DL380 G7: Booten vom USB via USB 3.1-PCI-e Karte möglich? (24)

Frage von Paderman zum Thema Server-Hardware ...

Windows 7
Bluesreens unternehmensweit (18)

Frage von SYS64738 zum Thema Windows 7 ...

LAN, WAN, Wireless
IP Adressen - Modem - Switch - Accesspoint (17)

Frage von teuferl82 zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
DNS ins mehreren Subnetzen (13)

Frage von joerg zum Thema Windows Netzwerk ...