Teamviewer-IDs von angemeldeten Benutzern auslesen
Auch wenn es im Allgemeinen verpönt ist, nutzen wir derzeit noch den Teamviewer für den Remotesupport.
Unter Anderem läuft der Teamviewer auch auf einem Remotedesktop-Session-Host. Um mir die IDs der angemeldeten Benutzer einfacher zu holen, habe ich ein kleines Skript in Powershell gebastelt, vielleicht hilft es ja dem Einen oder Anderen.
Beste Grüße!
Berthold
Unter Anderem läuft der Teamviewer auch auf einem Remotedesktop-Session-Host. Um mir die IDs der angemeldeten Benutzer einfacher zu holen, habe ich ein kleines Skript in Powershell gebastelt, vielleicht hilft es ja dem Einen oder Anderen.
Beste Grüße!
Berthold
# Liest die Teamviewer-IDs von den angemeldeten Benutzern
$hkeyUsers = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('USERS', $env:COMPUTERNAME)
$hkeyUsersSubkeys = $hkeyUsers.GetSubKeyNames()
$hkeyUsersSubkeys | % {
$tvKey = "$_\software\Teamviewer"
$tvKeySubKey = $hkeyUsers.OpenSubKey($tvKey)
if ($tvKeySubKey) {
$tvKeyNames = $tvKeySubKey.GetValue('ClientIDOfTSUser')
if ($tvKeyNames) {
$objSID = New-Object System.Security.Principal.SecurityIdentifier ($_)
$objUser = $objSID.Translate( [System.Security.Principal.NTAccount])
"$objUser -- $($tvKeyNames)"
}
else {
#ClientIDOfTSUser existiert nicht
}
$tvKeySubKey.Close()
}
else {
#Schlüssel Teamviewer existiert nicht
}
}
$hkeyUsers.Close()
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 310907
Url: https://administrator.de/knowledge/teamviewer-ids-von-angemeldeten-benutzern-auslesen-310907.html
Ausgedruckt am: 08.04.2025 um 00:04 Uhr
10 Kommentare
Neuester Kommentar

Hi,
also for each subsequent calls which open keys .
Regards
OpenRemoteBaseKey
for your information, if you use OpenRemoteBaseKey you should always close the registry resource afterwards$hkeyUsers.Close()
$tvKeySubKey.Close()
Regards
Bei mir über all was PS angeht. Ich frage mich die ganze Zeit woher du die Befehle überhaupt bekommst?
Also klar du deklarierst deine Variablen, das leuchtet mir vom PHP her noch ein. Aber so insgesamt, wie kommt man an das ganze Fachwissen für die PowerShell?

Aber so insgesamt, wie kommt man an das ganze Fachwissen für die PowerShell?
Reading the doc's from Microsoft, and studying the .NET Framework Powershell is based on NET so every object from it can also be used in PS.
Learn c# and you will have 60% of PS knowledge, besides the specific cmdlets
Regards
Hallo Berthold,
schön das du dich mit der PS auseinandersetzt
Nur als Ergänzung, falls du den Key HKEY_USERS nicht über die Default PS-Drives gefunden haben solltest und deswegen den direkten Weg über die .NET Klasse gegangen bist. Das ganze lässt sich alternativ auch so mit den Standard CMDLets machen:

Allzeit gutes Gelingen.
Grüße Uwe
schön das du dich mit der PS auseinandersetzt
Nur als Ergänzung, falls du den Key HKEY_USERS nicht über die Default PS-Drives gefunden haben solltest und deswegen den direkten Weg über die .NET Klasse gegangen bist. Das ganze lässt sich alternativ auch so mit den Standard CMDLets machen:
# PS-Drive für HKEY_USERS erstellen
New-PSDrive -Name HKU -PSProvider Registry -Root "HKEY_USERS" -EA Ignore
# Subkeys von HKU durchlaufen
gci HKU: -Force -EA Ignore | %{
$value = Get-ItemProperty -Name 'ClientIDOfTSUser' -Path "$($_.PSPath)\Software\TeamViewer" -EA Ignore | select -Expand ClientIDOfTSUser
if($value){
$user = (New-Object System.Security.Principal.SecurityIdentifier($_.PSChildName)).Translate([System.Security.Principal.NTAccount]).Value
"$user -- $value"
}
}
Vermutlich schreibt @colinardo dir das in 30 Sekunden runter...
Auf die Zeit kommt es nicht so sehr an, auf ein richtiges Ergebnis schon eher Allzeit gutes Gelingen.
Grüße Uwe
Hallo Dani,
Jepp, aber das es notwendig ist hab ich nicht gesagt
, viele Wege führen nach Rom. Hier hatte ich es halt mal zur Abwechslung damit gemacht, falls man es öfter brauchen sollte ... stand noch so in meinem Template ...
Grüße und schönes Wochenende
Uwe (der das dringend nötig hat nach 50 Stunden nonstop)
Jepp, aber das es notwendig ist hab ich nicht gesagt
Grüße und schönes Wochenende
Uwe (der das dringend nötig hat nach 50 Stunden nonstop)