Powershell: Wie erkennt man ein deinstalliertes USB-Gerät?

326
M.Brbr

Ich möchte, dass mein Powershell-Skript erkennt, wenn ich ein USB-Gerät einstecke. Ich habe die GPOs festgelegt, um die automatische Installation von USB-Geräten zu blockieren.

Im Moment verwende ich diesen Befehl, um festzustellen, wann ein USB-Gerät angeschlossen ist:

$query = SELECT * FROM __InstanceOperationEvent WITHIN 5 WHERE TargetInstance ISA 'Win32_LogicalDisk' AND TargetInstance.DriveYpe=23   Register-WmiEvent -Query $query -SourceIdentifier RemovableDiskDetection -Action {...}  

Aber wahrscheinlich, weil das Gerät nicht installiert ist, wird das Ereignis nicht erkannt und nichts passiert. Welche Art von Abfrage sollte ich verwenden, um festzustellen, wann ein USB-Gerät angeschlossen ist, auch wenn der Treiber des USB-Geräts noch nicht auf dem Computer installiert ist?

1
Es gibt andere USB-Geräte als Massenspeichergeräte? Was genau hast du blockiert und was genau willst du sehen? Wenn das GPO nicht funktioniert, wird kein Laufwerk angezeigt. Daniel B vor 5 Jahren 0
Nein, es gibt kein anderes USB-Gerät außer meinem USB-Stick. Ich habe das Gruppenrichtlinienobjekt "Verhindern der Installation von Wechseldatenträgern" und "Verhindern der Installation von Geräten, die nicht durch andere Richtlinieneinstellungen beschrieben werden" aktiviert. Ich möchte ein Powershell-Ereignis registrieren, das beim Einstecken eines USB-Geräts erkennt, dass eine USB-Einheit angeschlossen ist und eine Meldung anzeigt, z. B. "USB erkannt". Dies funktioniert gut, wenn das Gruppenrichtlinienobjekt nicht aktiviert ist, aber ich möchte nicht, dass USB-Geräte automatisch installiert werden. M.Brbr vor 5 Jahren 0

0 Antworten auf die Frage