Ü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 Microsoft.StylusInput.IStylusSyncPlugin.Error - oder Microsoft.StylusInput.IStylusAsyncPlugin.Error-Methode ) 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 fort.

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 zum Hinzufügen von ErrorData zur Warteschlange finden Sie unter Plug-In Data und realTimeStylus-Klasse.

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