Ist es möglich, deaktivierte/aktivierte Geräte über die Befehlszeile umzuschalten, ähnlich wie beim Geräte-Manager?

Ist es möglich, deaktivierte/aktivierte Geräte über die Befehlszeile umzuschalten, ähnlich wie beim Geräte-Manager?

Ich spiele gerne Fallout 3, das normalerweise viele Fehler hat, und noch mehr, wenn ich einige Mods hinzugefügt habe. Es muss wohl nicht extra erwähnt werden, dass es oft abstürzt. Mit den Abstürzen kann ich umgehen, das einzige Problem ist, dass meine Soundkarte in diesem Fall in einer Endlosschleife der Wiedergabe gefangen ist.

Ich kann die Audioschleife stoppen, indem ich das Gerät im Geräte-Manager ein- und ausschalte (Deaktivieren/Aktivieren), obwohl es nervig ist, immer wieder in den Geräte-Manager gehen zu müssen. Daher hoffe ich, den Vorgang halbautomatisieren zu können.

Gibt es eine Möglichkeit, ein Gerät mithilfe eines Batch-Skripts ein- und auszuschalten? Auf diese Weise könnte ich es einfach auf dem Desktop platzieren und ausführen, wenn meine Soundkarte in eine Schleife gerät.

Antwort1

Unter Windows 10 können Sie verwenden wmic. Ich bevorzuge die Verwendung PNPDeviceIDin der Where-Klausel. Sie können zuerst nach dem genauen Wert fragen:

wmic path Win32_PnPEntity where "PNPDeviceID like '%VEN%'" 

Sobald Sie es haben, verwenden Sie:

wmic path Win32_PNPEntity where "PNPDeviceID='yourPNPDeviceIDname'" call disable

Ich habe einige sehr nützliche Informationen zu wmic gefundenHier

Antwort2

Dank des von and31415 bereitgestellten Links konnte ich mithilfe des Dienstprogramms „Device Console“ (DevCon) eine Lösung entwickeln.

Ich habe die Anleitung zum Erwerb des Werkzeugs kopiert vondiese Antwort:

DevConist ein Befehlszeilentool, das detaillierte Informationen zu Geräten anzeigt und Ihnen die Suche und Manipulation von Geräten über die Befehlszeile ermöglicht. DevCon aktiviert, deaktiviert, installiert, konfiguriert und entfernt Geräte auf dem lokalen Computer und zeigt detaillierte Informationen zu Geräten auf lokalen und Remotecomputern an.

  1. .cabLaden Sie je nach Betriebssystem das passende Paket herunter :

  2. Öffnen Sie das .cabArchiv und extrahieren Sie die Datei mit dem Namen fil[some letters and numbers]. Sie sollte etwa 80 KB groß sein.

  3. Benennen Sie es um in devcon.exe.

Mit diesem Tool konnte ich die Hardware-ID meiner Soundkarte herausfinden und sie verwenden, um das Gerät zu aktivieren und zu deaktivieren. Da ich das Gerät nur umschalten muss, sieht meine Batch-Datei einfach so aus:

devcon.exe disable "PCI\VEN_13F6&DEV_8788&SUBSYS_85221043"
devcon.exe enable "PCI\VEN_13F6&DEV_8788&SUBSYS_85221043"

Diese längere Zeichenfolge ist die Hardware-Geräte-ID. Um diese zu finden, habe ich den DevCon- findallBefehl verwendet und die Ausgabe zur einfacheren Suche in eine Textdatei weitergeleitet.

devcon.exe findall * > C:\output.txt

Ich habe nach meinem Gerätenamen gesucht und die benötigte Zeichenfolge kopiert.


Notiz:Leider erfordert der Batch immer noch Administratorrechte, um ausgeführt zu werden, aber das ist ein kleines Problem (und eines, das ich möglicherweise lösen kannzu einem späteren Zeitpunkt lösen). Aber im Moment funktioniert es für mich.

verwandte Informationen