🇬🇧 | 🇩🇪 | 🇫🇷 | 🇪🇸 | 🇨🇳 | 🇸🇦
Wir haben keine DLL, aber wir haben:
Windows-Dateianalysator und Online-schneller Antivirus

Eine minimalistische Benutzeroberfläche mit schneller Suche, bequemem Hochladen und einer sauberen Abteilungsstruktur.

🛡️🔍 Überprüfen Sie Ihre Datei schnell, klicken Sie einfach auf diese Seite.
Virus-Check, Hashes, Signalüberprüfung, Architektur, KI-Informationen.

Wie man es repariert "Der WinRM-Client kann die Anfrage nicht verarbeiten. Die Ressource-URI für eine Aufzählungsoperation mit WQL-Filter darf keine Schlüssel enthalten und der Klassenname muss '*' (Stern) sein".

Gemäß dem von WinRM implementierten WS-Management-Standard muss die Resource-URI, wenn Sie eine Aufzählung mit einem WQL-Abfragefilter durchführen, das Basisklassenframework breit ansprechen und nicht eine bestimmte Instanz oder einen bestimmten Klassennamen mit spezifischen Schlüsseln. * ) als Wildcard für den Klassennamen und darf keine spezifischen Instanzschlüssel (wie spezifische Dienstnamen, IDs oder Handles) enthalten. Wenn Ihr Skript, Befehl oder Management-Software eine URI konstruiert, die explizit eine Klasse benennt oder Instanzselektoren angibt, während gleichzeitig eine WQL weitergegeben wird __Filter, blockiert der WinRM-Client die Anfrage und wirft diesen Fehler.


Schrittweise Lösungen

Abhängig davon, ob Sie einen manuellen Befehl über winrm, ein PowerShell-Cmdlet ausführen oder ein benutzerdefiniertes Skript schreiben, verwenden Sie eine der folgenden Lösungen, um das Problem zu lösen.

Korrektur 1: Korrektur der Kommando-Syntax in winrm Nutzen

Wenn Sie das Kommandozeilenprogramm verwenden winrm.cmd Sie müssen die erforderlichen Ressourcen aufzählen, um sicherzustellen, dass -filter Schalter wird mit einer Ressourcen-URI gekoppelt, die mit einem Sternchen endet ( * ) und enthält keine Schlüssel.

  1. Öffnen. Command Prompt oder... PowerShell als Administrator.
  2. Überprüfen Sie Ihren ursprünglichen Befehl. winrm enumerate wmicimv2/Win32_Service?Name=wuauserv -filter:"Select * from Win32_Service Where State='Running'"
  3. Ändern Sie den Ressourcen-URI-Teil, um den Stern zu verwenden ( * ) Wildcard und entfernen Sie den Schlüsselselektor ( ?Name=wuauserv Ändern Sie Ihren Befehl so, dass er dieser Struktur entspricht:
    winrm enumerate wmicimv2/* -filter:"Select * from Win32_Service Where State='Running'"
  4. Drücken Sie. Enter um den korrigierten Befehl auszuführen.

Korrektur 2: Einstellung von PowerShell Cmdlets ( Get-WSManInstance / Enumerate)

Wenn Sie native PowerShell WSMan Cmdlets verwenden, müssen Sie sicherstellen, dass -ResourceURI Parameter weist anstelle einer spezifischen CIM-Klasse oder Instanzschlüssel auf das Schema-Wildcard hin.

  1. Öffnen. PowerShell.
  2. Wenn Ihr fehlgeschlagener Code so aussieht:
    Get-WSManInstance -ResourceURI "wmicimv2/Win32_Process" -Filter "Select * From Win32_Process Where Name='notepad.exe'"
  3. Aktualisieren Sie -ResourceURI Das Argument zu beenden. /* so dass die WQL-Engine das Filtern der Klassen intern verarbeiten kann:
    Get-WSManInstance -ResourceURI "wmicimv2/*" -Filter "Select * From Win32_Process Where Name='notepad.exe'"
  4. Führen Sie das aktualisierte Skript aus.

Korrektur 3: Verwendung alternativer PowerShell-Cmdlets (empfohlen)

Wenn Ihr Ziel einfach darin besteht, WMI/CIM-Daten über das WinRM-Protokoll aus der Ferne abzufragen, ist es viel einfacher und weniger fehleranfällig, CIM-Cmdlets anstelle von rohen WSMan-Blockbefehlen zu verwenden. CIM-Cmdlets verarbeiten automatisch die URI-Formatierung hinter den Kulissen.

  1. Öffnen. PowerShell.
  2. Ersetzen Sie Ihren komplexen WSMan-Zählbefehl durch den Get-CimInstance cmdlet, das standardmäßig über WinRM ausgeführt wird:
    Get-CimInstance -ClassName Win32_Service -Filter "State='Running'" -ComputerName "RemoteComputerName"
  3. Wenn Sie explizit eine vollständige WQL-Abfrage verwenden müssen, verwenden Sie die -Query Parameter stattdessen:
    Get-CimInstance -Query "Select * from Win32_Service where State='Running'" -ComputerName "RemoteComputerName"
  4. Laufen Sie den Befehl aus, um die Daten zu holen, ohne WinRM-Syntaxbeschränkungen auszulösen.
ERROR_WSMAN_CANNOT_DECRYPT | ERROR_WSMAN_INVALID_URI_WMI_SINGLETON | ERROR_WSMAN_NO_IDENTIFY_FOR_LOCAL_SESSION | ERROR_WSMAN_NO_PUSH_SUBSCRIPTION_FOR_LOCAL_SESSION | ERROR_WSMAN_INVALID_SUBSCRIPTION_MANAGER

Es kann einige Fehler geben.. Learn Microsoft