Windows 10 Aufgabenplanung: USB Ereignis-Trigger Gerät angeschlossen – ACHTUNG: GILT FÜR WIN10 vor Version 1709

Update: Achtung, seit Windows 10 1709 Fall Creators Update, funktioniert diese Anleitung nicht mehr, weil Microsoft Änderungen an der XML-Struktur der USB-Ereignisse vorgenommen hat!
(Danke an Peter für den Kommentar.)

Hier die aktuelle Version.

Für so manche Aufgabe, die man am PC zu erledigen hat, kann es sinnvoll sein, wenn ein Task mittels USB Ereignis-Trigger automatisch gestartet wird, sobald ein bestimmtes Gerät angeschlossen wird. Ich verwende diese Methode hauptsächlich um Backup-Aufgaben zu automatisieren. Sie ist USB-Geräte-spezifisch: Das heißt der Task wird nur dann gestartet, wenn genau das eine von mir definierte USB-Gerät angesteckt wird. Dies wird durch einen USB Ereignis-Trigger mit manuell erstelltem Ereignisfilter erreicht.

Natürlich gibt es für diesen Anwendungsfall einige Tools und Anleitungen im Netz, jedoch möchte ich keine App installieren müssen und keine der Anleitungen mittels Windows 10 Bordmittel hat bei mir funktioniert. Deswegen musste ich mir das ganze genauer anschauen. Vielleicht wird ja dem ein oder anderen dadurch ein bisschen Zeit erspart…

Viel Spaß beim Nachbauen!

Schritt 1: Euer USB-Gerät eindeutig identifizieren:

Startet die Ereignisanzeige und klickt euch durch, bis ihr hier angekommen seid:

Anwendungs- und Dienstprotokolle
Microsoft
Windows
DriverFrameworks-UserMode
Betriebsbereit

Danach klickt ihr auf „Protokoll aktivieren“:

Wenn ihr das erledigt habt, könnt ihr euren USB-Stick anstecken und [F5] drücken sobald er von Windows erkannt wurde, damit die Einträge in der Ereignisanzeige aktualisiert werden.

Nun noch das Event 2006 suchen und den Wert bei „[instance]“ wegkopieren. Er beginnt (glaube ich) immer mit „SWD\…“

Schritt 2: Aufgabe für das ermittelte USB-Gerät anlegen:

Hier der funktionierende USB Ereignis-Trigger, der triggert, wenn ein von euch definierter USB-Stick angesteckt wird:

Wo „HIER_EUER_INSTANCE_WERT“ steht fügt ihr den Wert ein, den ihr im Event 2006 unter „instance“ gefunden und wegkopiert habt.
Wichtig dabei ist, dass ihr den Wert zuvor HTML-kodiert und erst dann einfügt.

Einen online HTML-Encoder hab ich hier gefunden: https://opinionatedgeek.com/Codecs/HtmlEncoder
(Danach sollten alle „&“ in „&“ umgewandelt worden sein…)

Ich nehme an ihr wisst, wie man eine Aufgabe erstellt, sonst hilft Google hier bestimmt weiter…
Einfach als Trigger „Bei einem Ereignis“ auswählen. Danach auf „Benutzerdefiniert“ und „Neuer Ereignisfilter“ klicken. Reiter „XML“ auswählen und den Hacken bei „Manuell bearbeiten“ setzen:

Event Trigger USB
Window 10 Event Trigger new USB device

Zu guter Letzt den angepassten Code einfügen, alles bestätigen, und sich beim ständigen Ein- und Ausstecken der USB-Geräte freuen… 😉

Nachtrag: kurze Erläuterungen für die Erstellung eines spezifischen Ereignisfilters

Rechte Maustaste auf den Eintrag in der Ereignisanzeige, dann auf Kopieren und Details als Text kopieren.

Irgendwo reinkopieren:

Hier nochmal der Code für den Ereignis-Filter:

Vergleiche die beiden Abschnitte und verstehe die Syntax… 😉
Hier eine detaillierte Anleitung by Microsoft…

Changelog:

  • 19.01.2017
    1. Hinweis zu geändertem Verhalten seit Windows 10 1709 Fall Creators Update und Link zu aktualisiertem Artikel

Autor: David

Ich bin ein leidenschaftlicher Techniker, der gerne mit elektronischen Gadgets experimentiert. Meine Augen beginnen zu leuchten, wenn ich über smarte Systeme im Wohnbereich diskutiere, besonders seitdem ich gemeinsam mit meiner Frau unser Eigenheim geschaffen habe. Beruflich bin ich in der IT-Branche tätig.

10 Gedanken zu „Windows 10 Aufgabenplanung: USB Ereignis-Trigger Gerät angeschlossen – ACHTUNG: GILT FÜR WIN10 vor Version 1709“

  1. Hallo David,
    ich verwende diese Methode auch um ein selbst erstelltes Backupprogramm auszulösen. Der XML-Filter unterscheidet sich etwas von Ihrem, aber ich habe auch Ihren XML-Filter ausprobiert. Weshalb die Probiererei? Seit dem Upgrade auf WIN10 Version 1709 funktioniert es nicht mehr (auf mehreren Rechnern)! Auch in einem benutzerdefinierten Filter in der Ereignisanzeige kommt kein Ergebnis (mit gleichem XML-Filter). Also liegt der Kern des Problems im XML-Filter. Ich habe schon etliche Zeit damit verbracht, kann aber keine Lösung finden. Ich vermute, es hat sich irgendetwas an der Syntax geändert. Haben Sie das Problem auch schon festgestellt und vielleicht sogar schon eine Lösung?
    Mit freundlichen Grüßen
    Peter Nerger

    1. Oje, nein ist mir noch nicht aufgefallen. Danke jedenfalls für die Vorwarnung, das werde ich mir ansehen, und den Blog updaten falls nötig. (Natürlich würde ich mich freuen, wenn du eine schon vorher gefundene Lösung hier postest.)

      Einen Hinweis kann ich dir aber geben, auch wenn du ihn wsl. eh berücksichtigt hast: Ich habe lange nach einem Fehler in der Syntax meines Filters gesucht, bis ich gemerkt habe, dass es eigentlich an einem fehlenden Hackerl in den Eigenschaften der Aufgabe gelegen hat: Aufgabe nur starten, falls der Computer im Netzbetrieb ausgeführt wird. (Natürlich war der Laptop nicht am Strom)
      Settings Task Taskmanager

        1. Hallo David,
          ich weiß inzwischen, woran es liegt. Microsoft hat mit der Version WIN10 1709 die XML-Ausgabe bei einem Ereignis verändert. Ich habe die files mal unten angehängt. Der wichtige Teil hier kurz:
          alt:


          neu:


          SWD\WPDBUSENUM\_??_USBSTOR#DISK&VEN_SINGLE&PROD_FLASH_READER&REV_1.00#058F63356336&0#{53F56307-B6BF-11D0-94F2-00A0C91EFB8B}

          Die InstanceID ist also eine Ebene tiefer gerutscht. Das zieht natürlich eine Änderung an dem Ereignis-Filter nach sich.
          Ich habe schon alle möglichen Varianten ausprobiert, aber kriege es nicht zum Funktionieren. Vielleicht hast Du eine Idee?
          Viele Grüße
          Peter

          Alt:

          2101
          1
          4
          37
          2
          0x8000000000000000

          12033

          Microsoft-Windows-DriverFrameworks-UserMode/Operational
          Server




          0x0
          0x141b
          0x0
          0x0

          0

          neu:

          2100
          1
          4
          37
          1
          0x8000000000000000

          1620

          Microsoft-Windows-DriverFrameworks-UserMode/Operational
          PNprivat



          {363C71CE-DE3F-41DA-B266-28113E44519A}
          SWD\WPDBUSENUM\_??_USBSTOR#DISK&VEN_SINGLE&PROD_FLASH_READER&REV_1.00#058F63356336&0#{53F56307-B6BF-11D0-94F2-00A0C91EFB8B}
          27
          1
          0x0
          0x0
          0x0
          0x0
          0

    1. Hi Peter,

      wsl. hast du es inzwischen bereits selbst gelöst, aber falls nicht: Ich bin endlich dazugekommen mir das näher anzuschauen. Du findest den neuen funktionierenden Ereignisfilter für Versionen von Windows 10 ab 1709 als neuen Artikel hier im Blog.

      lg, David

      1. Hallo David,
        ja, ich habe es inzwischen selbst gelöst gehabt. Ich hätte es Dir auch verraten, wenn Du Dich zu dem Thema mal gemeldet hättest. Was nach wie vor ärgerlich ist, dass nach jedem Windows Upgrade das Protokoll von DriverFrameworks-UserMode
        deaktiviert ist und die Festplattenkennung auch eine andere ist. Man muß also jedesmal neu hinschauen und nacharbeiten. Ich hoffe, Microsoft fällt bald auf, dass da was schiefläuft.
        Viele Grüße
        Peter

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.