Benutzer mit den meisten Antworten
Get-wmiobject wird nicht unterstützt

Frage
-
Moin,
ich habe ein kleines Script bei dem unter anderem die Seriennummer des Monitors über gwmi ausgelesen wird. Hat auch alles funktioniert bis gestern. Bei folgendem Code:
$SerialMonitor = get-wmiobject wmimonitorid -namespace root\wmi|foreach-object {($_.SerialNumberID -notmatch '^0$' | foreach {[char]$_}) -join ""
bekomme ich neuerdings die folgende Fehlermeldung:
Get-WmiObject : Nicht unterstützt
Andere Befehle mit gwmi funktionieren dagegen einwandfrei. Vielleicht hat ja jemand eine Idee oder kennt das Problem
Danke schon im voraus
Grüße
- Bearbeitet MCMaggi Donnerstag, 3. Mai 2018 06:54
Antworten
-
Hab mal den Monitor ausgetauscht. Mit einem neuen ging es.
Habe dann den alten wieder angesteckt und jetzt funktioniert es...
Versteh ich nicht aber muss ich ja auch ned :D
Danke für die Hilfe.
Grüße
- Als Antwort markiert MCMaggi Freitag, 4. Mai 2018 08:23
Alle Antworten
-
Nur um "Kopiefehler" oder so auszuschließen, hab ich den Code mal etwas leserlicher formatiert
Get-WmiObject -Class WMIMonitorID -Namespace root\wmi | ForEach-Object { ( $_.SerialNumberID -notmatch '^0$' | ForEach-Object { [CHAR]$_ } ) -join '' }
Bei mir läuft der Code so ohne Fehlemeldung und liefert mir die Seriennummern beider angeschlossener Monitore. Wenn der Code vorher lief und das jetzt nicht mehr tut - was hat sich geändert? ... und sag jetzt bitte nicht "Nichts"! ;-)Best regards,
(79,108,97,102|%{[char]$_})-join''
-
Oder kann es sein, dass Du das vorher nur mit Hardwaremaschinen versucht hast und jetzt bei VM's?
Dort kann ich den Teil deiner Fehlermeldung reproduzieren, die gibt aber mehr her, als den Teil den du gepostet hast und dort ist dann ersichtlich dass die MontitorID WMI-Klasse nicht supportet ist, was bei VM's ja auch eher keinen Sinn macht.
Beste Gruesse
brima -
physikalische Maschine, keine Virtuellen
Bei folgendem Code bekomme ich folgende Fehlermeldung:
Get-WmiObject wmimonitorid -namespace root\wmi|foreach-object{($_.SerialNumberID -notmatch '^0$' | foreach {[char]$_}) -join ""} Get-WmiObject : Nicht unterstützt At line:1 char:2 + Get-WmiObject wmimonitorid -namespace root\wmi|foreach-object{($_.Se ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Get-WmiObject], Managemen tException + FullyQualifiedErrorId : GetWMIManagementException,Microsoft.PowerShell.C ommands.GetWmiObjectCommand
Bei diesem Beispiel bekomme ich ein wenig mehr:
Get-WmiObject wmimonitorid Get-WmiObject : Ungültige Klasse "wmimonitorid" At line:1 char:2 + Get-WmiObject wmimonitorid + ~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidType: (:) [Get-WmiObject], ManagementExce ption + FullyQualifiedErrorId : GetWMIManagementException,Microsoft.PowerShell.C ommands.GetWmiObjectCommand
Ungültige Klasse... aber ich habe eigentlich nichts verändert was darauf Auswirkungen haben könnte.
Grüße
-
Hallo,
der zweite Feher ist klar, weil die Klasse nicht im default Namespace ist findet er sie ohne die Angabe des Namespaces nicht. (Get-WmiObject DriDraDralla erzeugt z.B.: den gleichen Fehler)
Dein letzter Satz klingt aber sehr wohl danach, dass du was veränderst hast.
In VM's kann ich wie gesagt dein Problem nachstellen, bei Hradware keine Probleme.
PS C:\> Get-WmiObject -Namespace root/WMI -list | Select-String WmiMonitorID \\Computer\ROOT\WMI:WmiMonitorID PS C:\> Get-WmiObject -Namespace root/WMI -Class WmiMonitorID Get-WmiObject : Not supported At line:1 char:1 + Get-WmiObject -Namespace root/WMI -Class WmiMonitorID + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Get-WmiObject], ManagementException + FullyQualifiedErrorId : GetWMIManagementException,Microsoft.PowerShell.Commands.GetWmiObjectCommand
# Hardware PS U:\> Get-WmiObject -Namespace root/WMI -list | Select-String WmiMonitorID \\HW\ROOT\WMI:WmiMonitorID PS U:\> Get-WmiObject -Namespace root/WMI -Class WmiMonitorID __GENUS : 2 __CLASS : WmiMonitorID ...
Beste Grüße
brima- Bearbeitet brima Donnerstag, 3. Mai 2018 12:07
-
... aber ich habe eigentlich nichts verändert was darauf Auswirkungen haben könnte.
Hmmmm .... "eigentlich" ... ;-) Nach meiner Erfahrung ist WMI gern mal ziemlich zickig und häufig mal ursächlich für Probleme, die man vordergründig damit nicht in Zusammenhang bringt. Tritt der Fehler auf mehreren / allen Maschinen in Deiner Infrastruktur auf? Wurden Updates, Anwendungen oder Treiber installiert? Hast Du schon mal versucht WMI "zu reparieren"? Ich würde im Moment davon ausgehen, dass es eher kein Scripting-Thema ist, sondern ein System-Thema.Best regards,
(79,108,97,102|%{[char]$_})-join''
-
.... vielleicht mal eine Tool installiert aber des würde wohl kaum Probleme machen.
Best regards,
(79,108,97,102|%{[char]$_})-join''
-
Hab mal den Monitor ausgetauscht. Mit einem neuen ging es.
Habe dann den alten wieder angesteckt und jetzt funktioniert es...
Versteh ich nicht aber muss ich ja auch ned :D
Danke für die Hilfe.
Grüße
- Als Antwort markiert MCMaggi Freitag, 4. Mai 2018 08:23