none
Win32_ComputerSystem arbeitet unzuverlässig RRS feed

  • Frage

  • Hallo,

     

    wir setzen bei uns ein PS-Script ein um festzustellen welche User an welchen Rechnern angemeldet sind. Dies ist wichtig um neuen externen Usern freie Rechner zuweisen zu können, auf die sie sich per Remotedesktop verbinden können.

    Der aktuelle User wird mit folgender Zeile ausgelesen.

    Get-WmiObject -Class Win32_ComputerSystem -computer $comp | Select-Object UserName

    leider funktioniert das nicht zuverlässig. Mal wird der User ausgelesen, mal gibt die Funktionen einfach keinen User zurück (kein Fehler). Woran liegt das bzw. wie kann ich den angemeldeten User sicher auslesen?

    Danke

    Martin

     

     

     

     



    Donnerstag, 9. Juni 2011 12:30

Antworten

  • Die Anfrage zeigt dir nur den lokal angemeldeten User an. Wenn der User per RDP angemeldet ist, bleibt das Feld leer.

    Dieses Addon schafft Abhilfe. Wenn du es installiert hast, kannst du mit:

    Import-Module PSTerminalServices
    Get-TSSession -ComputerName MYServer
    


    alle Sessions (Aktiv und Getrennt, Lokal und RDP) anzeigen lassen.
    Und um nach den Usernamen der aktiven Sessions zu filtern:

    Get-TSSession -ComputerName MyServer| ? {$_.State -eq "Active"} | Format-Table UserAccount
    

    Grüße, Denniver



    http://bytecookie.wordpress.com/


    Donnerstag, 9. Juni 2011 22:42
    Moderator

Alle Antworten

  • Die Anfrage zeigt dir nur den lokal angemeldeten User an. Wenn der User per RDP angemeldet ist, bleibt das Feld leer.

    Dieses Addon schafft Abhilfe. Wenn du es installiert hast, kannst du mit:

    Import-Module PSTerminalServices
    Get-TSSession -ComputerName MYServer
    


    alle Sessions (Aktiv und Getrennt, Lokal und RDP) anzeigen lassen.
    Und um nach den Usernamen der aktiven Sessions zu filtern:

    Get-TSSession -ComputerName MyServer| ? {$_.State -eq "Active"} | Format-Table UserAccount
    

    Grüße, Denniver



    http://bytecookie.wordpress.com/


    Donnerstag, 9. Juni 2011 22:42
    Moderator
  • Vielen Dank.

    Hört sich ja gut an, leider kann ich das Modul nicht verwenden da ich es nicht schaffe zu importieren. Statt dessen kommt folgende Fehlermeldung:

     

    PS L:\> Import-Module PSTerminalServices
    Import-Module : Fehler beim Laden der Formatdatendatei:
    Microsoft.PowerShell, C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules\PSTerm
    inalServices\Format\PSFanatic.PSTerminalServices.Format.ps1xml: Die Datei wurde
     übersprungen, da sie bereits aus "Microsoft.PowerShell" vorhanden war.

     

    Eine Lösung für das Problem habe ich tzrotz längerer Suche nicht gefunden.

     


    Mittwoch, 15. Juni 2011 12:21
  • Das ist etwas kurios. Dieses Problem geistert immer mal wieder durch die Foren, bei den verschiedensten Modulen. Ich konnte es leider bisher nie reproduzieren.

    Auf welchem OS führst du den Code denn aus?

    Grüße, Denniver


    http://bytecookie.wordpress.com/
    Mittwoch, 15. Juni 2011 21:37
    Moderator
  • Ich habe es unter XP versucht. Kann auch sein das dieses Problem was mit den Sicherheitseinstellungen (Signatur) zu tun hat. Zuerst kam die Meldung das ich das Modul nicht importieren könne, da die Ausführung nicjht signierter Scrpte verboten sei (was auch so ist). Dann habe ich die beiden Script-dateien des Moduls signiert und noch mal versucht (Meldung tritt nicht mehr auf) was dann in diesem fehler endet.
    Donnerstag, 16. Juni 2011 14:33
  • Ich denke nicht. Die einzigen beiden Male, wo von einer funktionierenden Lösung berichtet wurde, bestand diese darin (allerdings auf Server 2008), das NET 3.5.1 Feature zu installieren. Ist auf deinem XP .NET 3.5.1 installiert?

    Grüße, Denniver


    http://bytecookie.wordpress.com/
    Donnerstag, 16. Juni 2011 14:47
    Moderator
  • Ích habe jetzt geschafft das AddOn zu aktivieren und local auf dem Rechner funktioniert das auch. Doch beim Abfragen eines entfernten Rechners (Win7 UND XP) bekomme ich die Meldung "RPC-Server ist nicht verfügbar".

    Ich habe eine ganze Reihe von möglichen Kandidaten auf einem W7 System durchprobiert (Fírewall-Dienst deaktiviert, RPC-Locator-Dienst aktiviert, usw. usf.) aber wohl nicht das richtige erwischt, ich kriege es jedenfalls nicht zum laufen. Welche Dienste müssen also auf dem Zielsystem laufen und welche Firewallausnahmen müssen aktiviert sein damit das klappt?

     

    Danke & Gruß

    Mittwoch, 22. Juni 2011 08:43
  • Die möglichen Gründe für eine "RPC-Server ist nicht verfügbar"-Meldung sind im allgemeinen außerordentlich vielfältig und aus der Ferne schwer zu diagnostizieren.
    Es wäre erstmal hilfreich zu wissen auf welchem Weg das Modul versucht den initialen Kontakt zum Zielrechner herzustellen. Poste das doch mal im englischen Powershell-Forum, dort liest Shay Levy mit, der der Author dieses Moduls ist, der sollte dazu was sagen können.

    Grüße, Denniver


    http://bytecookie.wordpress.com/
    Donnerstag, 23. Juni 2011 13:04
    Moderator