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

BGINFO Anzeige der Profilgröße

Frage Microsoft Windows Userverwaltung

Mitglied: sysadmbonn

sysadmbonn (Level 1) - Jetzt verbinden

08.06.2009, aktualisiert 18.10.2012, 10286 Aufrufe, 11 Kommentare

BGINFO nutzen um den User die Größe des Profilspeichers anzuzeigen.

Hallo,

ich nutze in unserer Domäne BGINFO um einige User und Maschinen Infos auf den Desktop "zu brennen". Nun möcht ich den Usern die Größe Ihres Profilspeichers anzeigen, damit sie selbst, und ich wenn ich davor sitze, sehen wie viel Platz sie verbrauchen. Soll eine Art erste Stufe der Umgewöhung sein damit ich später die Profilgrößen beschränken kann.

Kann ich das über WMI auslesen? Mit VB-Script bin ich nicht so gut. Da müßte ich schon Hilfe bekommen ...

Danke ...
Mitglied: Logan000
08.06.2009 um 12:09 Uhr
Moin Moin

Das solte auch ohne WMI per vbs klappen, etwa so:
01.
Dim FSO 
02.
Dim Folder 
03.
Set FSO = CreateObject("Scripting.FileSystemObject") 
04.
Set Folder = FSO.GetFolder("C:\Dokumente und Einstellungen\%Username%\") 
05.
ResultByte = Folder.Size 
06.
ResultKB = ResultByte/1024 
07.
ResultMB = ResultKB/1024 
08.
ResultGB = ResultMB/1024 
09.
 
10.
msgbox ResultByte & " byte" & vbcrlf & ResultKB & " Kb" & vbcrlf & ResultMB & " Mb" & vbcrlf & resultgb & " Gb"
Gruß L.
Bitte warten ..
Mitglied: sysadmbonn
08.06.2009 um 12:39 Uhr
Hallo,

danke für die schnelle Antwort.

Habe den Quelltext von oben in eine Textdatei kopiert (mit PSPad) und als *.vbs abgespeichert. Nach dem Aufrufen der Datei kommt folgende Fehlermeldung:

Zeile 10
Zeichen 81
Fehler Anweisungsende erwartet
Code 800A0401
Quelle Kompilierungsfehler in Microsoft VBScript

???
Hab den Fehler, es fehlte ein Anführungszeichen.

Jetzt meckert er aber er hätte den Pfad nicht gefunden zu den Userprofilen. Habe den mal auf was anders umgelegt (C:\i386) und siehe da es geht.
Aber wie kommt das dann in mein BGInfo? Kann ich da die Variable ResultGB übergeben? Und läßt die sich vieleicht auf zwei Stellen nach Komma kürzen?

Danke, danke, danke ...

Bitte warten ..
Mitglied: sysadmbonn
08.06.2009 um 12:57 Uhr
So,

nach einigem Experimentieren: Er nimmt die Varible "%username%" nicht an. Welche für mich ja nun sehr wichtig ist, da das ganze ja im Kontext des Users laufen soll ...

???
Bitte warten ..
Mitglied: Logan000
08.06.2009 um 13:23 Uhr
Moin Moin

Er nimmt die Varible "%username%" nicht an.
Sorry, mein Fehler. VBS kennt diese Form der Umgebungsvariablen nicht. ich wollte damit nur andeuten das Du dort den Benutzernamen angeben musst.

Denn kannst du entweder so auslesen und Dir dann deinen Profilepfad zusammen klöppeln:
01.
Set objNetwork = CreateObject("Wscript.Network") 
02.
szUser =objNetwork.UserName 
03.
msgbox szUser 
04.
profile = "C:\Dokumente und Einstellungen\ & szUser & "\"
Oder Du liest Ihn so direkt aus:
01.
Set WshShell = WScript.CreateObject("WScript.Shell") 
02.
Set objEnv = WshShell.Environment("PROCESS") 
03.
profile = objEnv("USERPROFILE") 
04.
msgbox profile
Gruß L.

/EDIT

Ich hab beschlossen das mir diese Information auch in BGInfo sehr nützlich erscheint.
Hier mein vollständiges Skript:
01.
Set FSO = CreateObject("Scripting.FileSystemObject")  
02.
Set WshShell = CreateObject("WScript.Shell") 
03.
Set objEnv = WshShell.Environment("PROCESS") 
04.
profile = objEnv("USERPROFILE") 
05.
If Right(profile, 1) <> "\" Then profile = profile & "\" 
06.
Set Folder = FSO.GetFolder(profile) 
07.
ResultByte = Folder.Size 
08.
ResultKB = Round(ResultByte/1024,2) 
09.
ResultMB = Round(ResultKB/1024,2) 
10.
ResultGB = Round(ResultMB/1024,2) 
11.
If len(ResultByte)<= 6 Then Result = ResultByte & " Byte" 
12.
If len(ResultByte)> 6 Then Result = ResultKB & " KB" 
13.
If len(ResultKB)> 6 Then Result = ResultMB & " MB" 
14.
If len(ResultMB)> 6 Then Result = ResultGB & " GB" 
15.
' msgbox result ' nur zum testen 
16.
Echo result     ' Nur für BGINFO
/EDIT
Bitte warten ..
Mitglied: sysadmbonn
08.06.2009 um 14:41 Uhr
Vielen lieben Dank!!! Das hätte ich nie hinbekommen. Ich finde einfach nicht die Zeit mich in VB einzuarbeiten ...

Und wie übergebe ich jetzt die Varibale "result" an BGInfo? Wenn ich das Skript durchlaufen lasse wird keine Variable erzeugt die mit Set auslesen oder mit Echo anzeigen lassen kann.

Noch mals vielen Dank. Ich bin fast am Ziel ...

A.
Bitte warten ..
Mitglied: Logan000
08.06.2009 um 15:08 Uhr
Moin

Du kannst das Skript in BGinfo über Custom / New direkt hinterlegen.
Option vb Skript auswählen.
Skriptpfad (UNC Pfad) angeben und als Identifer einen ausagekräftigen namen angeben (z.B. Profil Size oder so).
BGInfo liest dann das ECHo in Zeile 16 aus und zeigt es an.

Gruß L.
Bitte warten ..
Mitglied: masterbonsai
08.06.2009 um 15:33 Uhr
hallo logan,

habe den thread mit verfolgt, da mihc das thema auch interessiert hat..

dein script funktioniert toll, einen kleinen schönheitsfehler hat die sache jedoch..

du liest den profilpfad aus.. und hier kommt bei mir z.b. 2,3GB raus.. das eigentliche (servergespeicherte) profil hat "nur" 200MB da ja LOKALE EINSTELLUNGEN usw. nicht berücksichtigt werden sollten...

ich denke, dass das die aufgabe war..oder?

woher nimmt windows (ARBEITSPLATZ, EIGENTSCHAFTEN, ERWEITERT) die informationen her? um die gehts doch im kern...

gruss
jochen
Bitte warten ..
Mitglied: Logan000
08.06.2009 um 16:01 Uhr
Moin Jochen

Das Skript ermittelt den Pfad des "verwendten" Profils (das ist eigentlich immer lokal, egal ob die Profile servergespeichet sind oder nicht) und ermittelt die Ordnergröße.

Wenn du nur die Größe des Servergespeicherten Profils anzeigen möchtest, würde ich auch genau das Abfragen. Also in etwa so:
01.
Set objNetwork = CreateObject("Wscript.Network")  
02.
Set FSO = CreateObject("Scripting.FileSystemObject")   
03.
Set Folder = FSO.GetFolder("\\Fileserver\ProfilShare\" & objNetwork.UserName)  
04.
result = Folder.FileSize 
05.
....
woher nimmt windows (ARBEITSPLATZ, EIGENTSCHAFTEN, ERWEITERT) die informationen her?
Ich bin nicht ganz sicher aber die stehen wohl unter folgendem Regkey:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

Gruß L.
Bitte warten ..
Mitglied: sysadmbonn
08.06.2009 um 18:11 Uhr
Hallo,

was Jochen da schreibt stimmt natürlich. Es geht mir ja um die Servergespeicherten. Aber wie üblich denkt man (diesmal ich) nicht weit genug.

Vielleicht sollten wir das ganze etwas anders aufziehen?
Also mir würde ein Skript reichen, das frühmorgens auf dem Server läuft und die dann aktuellen Werte in eine was auch immer (Am geilsten natürlich SQL) Datei schreibt.
Könnte man diese dann im Logon als Enviroment Varible schreiben?
So hätte man mehrere Möglichkeiten diese weiter zu verarbeiten.

Oder habt Ihr nen anderen Ansatz?

Cheers A.
Bitte warten ..
Mitglied: Logan000
09.06.2009, aktualisiert 18.10.2012
Moin Moin

Es geht mir ja um die Servergespeicherten. Aber wie üblich denkt man (diesmal ich) nicht weit genug.
Vielleicht sollten wir das ganze etwas anders aufziehen?
Also mir würde ein Skript reichen, das frühmorgens auf dem Server läuft und die dann aktuellen Werte in eine was auch immer (Am geilsten natürlich SQL) Datei schreibt.
Oder habt Ihr nen anderen Ansatz?
Jupp. Ich würde von einem Serverskript abraten. Das könnte schnell mit Berechtigungen kollidieren.
Ich wüder das Skript leicht anpassen und weiterhin BGInfo diese informationen im Benutzerkontext holen lassen.
Das Skript sollte dann etwa so aussehen:
01.
Set objNetwork = CreateObject("Wscript.Network")  
02.
Set FSO = CreateObject("Scripting.FileSystemObject")   
03.
Profile = "\\Fileserver\ProfilShare\" \" & objNetwork.UserName 
04.
If Right(profile, 1) <> "\" Then profile = profile & "\" 
05.
Set Folder = FSO.GetFolder(profile) 
06.
ResultByte = Folder.Size 
07.
ResultKB = Round(ResultByte/1024,2) 
08.
ResultMB = Round(ResultKB/1024,2) 
09.
ResultGB = Round(ResultMB/1024,2) 
10.
If len(ResultByte)<= 6 Then Result = ResultByte & " Byte" 
11.
If len(ResultByte)> 6 Then Result = ResultKB & " KB" 
12.
If len(ResultKB)> 6 Then Result = ResultMB & " MB" 
13.
If len(ResultMB)> 6 Then Result = ResultGB & " GB" 
14.
' msgbox result ' nur zum testen 
15.
Echo result     ' Nur für BGINFO
Was das Thema Datenbank angeht, das kann BGInfo auch.
Schau Dir mal dieses Tuitorial an :http://www.administrator.de/wissen/computerinventur-per-bginfo-%28rewor ...

Gruß L.
Bitte warten ..
Mitglied: Destry
18.06.2009 um 16:47 Uhr
Hallo sysadmbonn,

ich weiss nicht ob es hilft, aber:

Es gibt in den Gruppenpolicies unter "Benutzerkonfiguration -> Administrative Vorlagen -> System/Benutzerprofile" alle notwendigen Einstellungen um Nutzerprofile und deren Größe zu regeln.

Nach Aktivierung dieser Regel erscheint beim Nutzer in der Taskleiste unten rechts ein Symbol, ein kleiner Monitor, welches alle Informationen enthält.

Für den Anfang würde ich die Größe des Profils sehr großzügig auslegen, damit Du siehst wie es funktioniert und welche Größen vorhanden sind. Nach und nach kannst Du die Größe dann runter drehen und sehen was passiert.

Gruss,
Destry
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
E-Mail
gelöst GMail: Anzeige der Mailübersicht ändern (7)

Frage von honeybee zum Thema E-Mail ...

RedHat, CentOS, Fedora
gelöst Die Website hat die Anzeige dieser Webseite abgelehnt - SePolicies - Linux (1)

Frage von rainergugus zum Thema RedHat, CentOS, Fedora ...

Batch & Shell
gelöst Bginfo config.bgi Datei wird nicht geladen (25)

Frage von Hendrik2586 zum Thema Batch & Shell ...

Microsoft Office
Excel 2016 anzeige der markierten Spalten (1)

Frage von endurance zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...