Überlegungen zur Fehlerbehandlung für die StylusInput-API

Nicht behandelte Ausnahmen, die von einem Plug-In ausgelöst werden, werden vom RealTimeStylus-Objekt abgefangen. Wenn ein Plug-In eine Ausnahme auslöst, wird der normale Datenfluss unterbrochen. Das RealTimeStylus-Objekt:

  1. Erstellt ein ErrorData-Objekt (in verwaltetem Code).
  2. Ruft die Error-Methode (in verwaltetem Code entweder die Methode Microsoft.StylusInput.IStylusSyncPlugin.Error oder Microsoft.StylusInput.IStylusAsyncPlugin.Error) des Plug-Ins auf, das die Ausnahme ausgelöst hat.
  3. Ruft die Error-Methode der verbleibenden Plug-Ins in dieser Auflistung auf.
  4. Wenn das Plug-In, das die Ausnahme ausgelöst hat, ein synchrones Plug-In ist, wird das ErrorData-Objekt (in verwaltetem Code) der Ausgabewarteschlange hinzugefügt.
  5. Das RealTimeStylus-Objekt setzt die normale Verarbeitung der ursprünglichen Daten wieder ein.

Wenn ein Plug-In eine Ausnahme von seiner Error-Methode auslöst, fängt das RealTimeStylus-Objekt die Ausnahme ab, generiert jedoch kein neues ErrorData-Objekt. Weitere Informationen dazu, wie ErrorData der Warteschlange hinzugefügt wird, finden Sie unter Plug-In-Daten und die RealTimeStylus-Klasse.

Das RealTimeStylus-Objekt stoppt die Verarbeitung von Daten aus dem Datenstrom des Tablettstifts nicht, wenn eines seiner Plug-Ins eine Ausnahme auslöst. Je nach Entwurf müssen einige Ihrer Plug-Ins möglicherweise die ErrorData-Benachrichtigung abonnieren und ihr Verhalten ändern, wenn eine Ausnahme auftritt.