VBS: alle lokalen Benutzer eines Rechners in einer MsgBox anzeigen lassen
Guten Tag liebe Community!
Habe google durchforstet und Kollegen und Mitarbeiter gefragt, aber keiner konnte mir so wirklich helfen.
Ich versuche den Namen aller lokalen Benutzer aus meinem System auszulesen und in einer einzigen MsgBox anzuzeigen.
Also folgende Situation:
Rechtsklick auf Arbeitsplatz , dann auf Verwaltung.
In der Computerverwaltung auf Lokale Benutzer und Gruppen im Ordner "Benutzer" stehen folgende Benutzer:
test 1
test 2
Administrator
test3
und ich möchte das mein Script diese Benutzernamen in einer MsgBox ausgibt.
bisheriger Lösungsansatz:
Set wshShell = WScript.CreateObject( "WScript.Shell" )
strComputerName = wshShell.ExpandEnvironmentStrings( "%COMPUTERNAME%" )
Set objwmi = GetObject("winmgmts:\\" & strComputerName & "\root\CIMV2")
Set collitems = objwmi.execquery("Select * from win32_useraccount")
For Each objitem In collitems
WScript.Echo objitem.Name
Next
Sollte dies geschehen sein wär einer evtl. noch so nett und könnte mir noch sagen wie ich lokale benutzer mittels VBS auch wieder löschen kann ? ... also Name des zu löschenden Benutzer in ne InputBox und dann ausm System löschen ?
Vielen Dank schonmal im Vorraus, wäre echt sehr dankbar für eine rasche Antwort.
Grüße
Yannosch
Habe google durchforstet und Kollegen und Mitarbeiter gefragt, aber keiner konnte mir so wirklich helfen.
Ich versuche den Namen aller lokalen Benutzer aus meinem System auszulesen und in einer einzigen MsgBox anzuzeigen.
Also folgende Situation:
Rechtsklick auf Arbeitsplatz , dann auf Verwaltung.
In der Computerverwaltung auf Lokale Benutzer und Gruppen im Ordner "Benutzer" stehen folgende Benutzer:
test 1
test 2
Administrator
test3
und ich möchte das mein Script diese Benutzernamen in einer MsgBox ausgibt.
bisheriger Lösungsansatz:
Set wshShell = WScript.CreateObject( "WScript.Shell" )
strComputerName = wshShell.ExpandEnvironmentStrings( "%COMPUTERNAME%" )
Set objwmi = GetObject("winmgmts:\\" & strComputerName & "\root\CIMV2")
Set collitems = objwmi.execquery("Select * from win32_useraccount")
For Each objitem In collitems
WScript.Echo objitem.Name
Next
Sollte dies geschehen sein wär einer evtl. noch so nett und könnte mir noch sagen wie ich lokale benutzer mittels VBS auch wieder löschen kann ? ... also Name des zu löschenden Benutzer in ne InputBox und dann ausm System löschen ?
Vielen Dank schonmal im Vorraus, wäre echt sehr dankbar für eine rasche Antwort.
Grüße
Yannosch
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 215241
Url: https://administrator.de/forum/vbs-alle-lokalen-benutzer-eines-rechners-in-einer-msgbox-anzeigen-lassen-215241.html
Ausgedruckt am: 07.04.2025 um 10:04 Uhr
2 Kommentare
Neuester Kommentar
Hallo Yannosch,
könntest du so machen
Grüße Uwe
könntest du so machen
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_UserAccount Where LocalAccount = True")
allUsers = ""
For Each objItem in colItems
If objItem.Name <> "" Then
allUsers = allUsers & objItem.Name & vbNewLine
End If
Next
MsgBox "Alle Benutzer dieses Computers: " & vbNewLine & "--------------------------------------" & vbNewLine & allUsers
strUsername = InputBox("Welchen Benutzer möchtest du löschen?","User löschen")
If strUsername <> "" Then
Set objComputer = GetObject("WinNT://.")
objComputer.Delete "user", strUsername
MsgBox "Benutzer '" & strUsername & "' wurde gelöscht"
Else
MsgBox "Sie haben keinen Benutzernamen angegeben",48
End If
Grüße Uwe