Probleme mit WMIC

  • Hallo zusammen,
    ich bin seit einigen Tagen auf Windows 11 24H2 umgestiegen und da funktionieren alle Befehle mit WMIC nicht mehr, da Microsoft
    WMIC endgültig in "Rente" geschickt hat.
    Als Ersatz wird immer auf die PowerShell verwiesen.
    Nur habe ich noch nicht gefunden, wie dieser Ersatz aussieht.
    Es geht um diese Zeile in AutoIt:

    ; Das Konto BigRox so einrichten, dass sein Passwort nie abläuft (die Option im entsprechenden Dialogfeld wird markiert).
    RunWait(@ComSpec & " /c " & "WMIC USERACCOUNT WHERE Name='" & $_sUserName & "' SET PasswordExpires=FALSE", "", @SW_HIDE)

    Und wie kann man den PowerShell-Befehl dann einfach in ein AutoIt-Script einbauen?
    Gibt es dafür eventuell eine Art PowerShellUDF?
    Oder muss man dafür immer ein .ps1-Script schreiben und dieses Script dann in AutoIt aufrufen?

    MfG:
    BigRox

  • Du kannst auch anstatt über externe Tools zu gehen, das WMI-COM-Objekt verwenden.
    Das macht das arbeiten strukturierter und flexibler.
    Dein konkretes Beispiel würde man z. B. damit folgendermaßen umsetzen können:

  • Hallo AspirinJunkie,
    vielen Dank für deine Hilfe:thumbup:.
    Dein Script funktioniert einwandfrei.

    Nur einige Fragen habe ich da noch:
    Wie komme ich an die Informationen zum WMI-COM-Objekt?
    Ich meine in Visual BASIC gab es dazu eine Hilfe (wenn man einen Punkt hinter ein Objekt geschrieben hat, erschien da ein Fenster mit weiteren Informationen zu dem Objekt), gibt es dies eventuell auch für AutoIt?

    MfG:
    BigRox

  • es gibt eine ScriptOmatic Umsetzung für WMI.

    siehe hier: https://www.autoitscript.com/forum/files/fi…script-o-matic/

    Wenn du das Script compilierst, dann startet das ganze wohl etwas schneller.

    Einfach beim Start etwas Geduld, bis alle Klassen geladen wurden. ;)

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Wie komme ich an die Informationen zum WMI-COM-Objekt?

    Naiv rangegangen: Wenn du das jeweilige Objekt hast, frag dessen Typ mit ObjName() ab.
    Nach dem jeweiligen Wert dann googlen und du findest in der Regel damit die Eigenschaften des jeweiligen Objektes.

    Das WMI-Objekt wäre z.B. das SWbemServicesEx, was wiederrum nach der Beschreibung dort eine Erweiterung des SWbemServices ist.
    Das Ergebnis von .ExecQuery wäre dann das SWbemObjectSet und die einzelnen Items wären SWbemObjectEx bzw. SWbemObject usw.

  • ich bin seit einigen Tagen auf Windows 11 24H2 umgestiegen und da funktionieren alle Befehle mit WMIC nicht mehr, da Microsoft
    WMIC endgültig in "Rente" geschickt hat.

    Wie es aussieht, kann WMIC einfach wieder aktiviert werden: https://winxperts4all.at/index.php/betr…der-hinzufuegen

  • Hallo Water,
    entweder habe ich was auf den Augen oder in der Windows-Version 24H2 gibt es nichts zum aktivieren.
    Auch finde ich nirgends einen Button "Optionale Features" zum draufklicken.
    Um zu dem Fenster zu gelangen muss ich "Optionale Features" im Suchfeld eingeben und in der Liste mit den Features gibt es kein WIMC mehr.
    Irgendwo habe ich aber gelesen, dass WIMC noch auf dem Rechner ist und man zum aufrufen nur den ganzen Pfad dahin angeben muss.
    Aber wo ist die Datei und wie lange das noch so funktioniert, das stand nirgends.
    Ich vermute mal, dass Microsoft diese Datei irgendwann ganz entfernt.

    MfG:
    BigRox

  • Die engl. Beschreibung hilft besser.
    Bei mir (Windows 11 23H2) funktioniert:

    • Im Eingabefeld: "Optionales Feature" eingeben.
    • Die angezeigte Liste enthält auch "Optionales Feature hinzufügen" > auswählen
    • Der erste Punkt ist "Optionales Feature hinzufügen"
    • Rechts "Features anzeigen" auswählen, "WMIC" selektieren und mit "Weiter" installieren.
  • PS: Microsoft entfernt eigentlich nie irgendetwas vollkommen. In der Regel werden nur Verweise und Verknüpfung entfernt. Siehe die „alte“DOS-Box oder Windows Explorer. Daher kann man davon ausgehen, dass bis auf Witeres jegliche jemals eingeführte Funktion noch viele Jahre funktionieren wird. Das ist das Leid eines „offen“ Betriebssystems.

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Hallo an alle die mir geantwortet haben,

    es gibt eine ScriptOmatic Umsetzung für WMI.

    siehe hier: https://www.autoitscript.com/forum/files/fi…script-o-matic/

    Wenn du das Script compilierst, dann startet das ganze wohl etwas schneller.

    Einfach beim Start etwas Geduld, bis alle Klassen geladen wurden. ;)

    Vielen Dank für den Tipp, genau so etwas habe ich gesucht.

    Die engl. Beschreibung hilft besser.
    Bei mir (Windows 11 23H2) funktioniert:

    • Im Eingabefeld: "Optionales Feature" eingeben.
    • Die angezeigte Liste enthält auch "Optionales Feature hinzufügen" > auswählen
    • Der erste Punkt ist "Optionales Feature hinzufügen"
    • Rechts "Features anzeigen" auswählen, "WMIC" selektieren und mit "Weiter" installieren.

    Wenn ich es so mache, so finde ich es auch.

    PS: Microsoft entfernt eigentlich nie irgendetwas vollkommen. In der Regel werden nur Verweise und Verknüpfung entfernt. Siehe die „alte“DOS-Box oder Windows Explorer. Daher kann man davon ausgehen, dass bis auf Witeres jegliche jemals eingeführte Funktion noch viele Jahre funktionieren wird. Das ist das Leid eines „offen“ Betriebssystems.

    Ich glaube, es ist besser sofort auf WMI-COM-Objekte umzusteigen und sich nicht darauf zu verlassen, dass Microsoft auch ab 24H2 nur Verknüpfungen entfernt.
    Da Microsoft dieses Programm anscheinend als Sicherheitsrisiko eingestuft hat und von Microsoft hat es schon öfters auch mahl etwas gänzlich unerwartetes gegeben.


    Die Datei befindet sich übrigens noch im Windows\System32\webm-Ordner.