Entwurfsüberlegungen für benutzerdefinierte Geräte
In diesem Thema werden Entwurfsüberlegungen beschrieben, mit denen Sie ermitteln können, ob Ihr Gerät einen benutzerdefinierten Treiber benötigt.
Bestimmen des Zu implementierenden Treibertyps
In dieser Tabelle wird beschrieben, wann Sie einen benutzerdefinierten Treiber für Ihr Gerät entwickeln und mit diesem über die Gerätezugriffs-API kommunizieren sollten und wann Sie stattdessen von Windows bereitgestellte Gerätestapel verwenden sollten.
Zur Unterstützung | Implementierung |
---|---|
Bekannte Geräte, einschließlich:
|
Für viele Arten bekannter Geräte benötigen Sie keinen benutzerdefinierten Treiber, da Windows APIs und Gerätetreiberschnittstellen (Class-Extension Device Driver Interfaces, DDIs) enthält, die die Kommunikation zwischen dem Treiber und Windows verwalten. Sensor-, Standort- und WpD-Geräte (Windows Portable Device) sind einige Beispiele für Geräteklassen, die über diese Unterstützung verfügen. Wenn Sie einen Treiber erstellen, der eine dieser von Windows bereitgestellten DDIs zum Senden und Empfangen von Daten und Befehlen verwendet, ist es nicht erforderlich, dass Ihre Windows Store-App die Gerätezugriffs-API verwendet, um den Zugriff zu vermitteln oder Eingabe-/Ausgabe-Steuerelementcodes (E/A) direkt an den Treiber zu senden. Wenn eine Windows Store-App den Zugriff auf ein bekanntes Gerät mithilfe der Windows-Runtime-API für seine Geräteklasse anfordert, übernimmt Windows 8 den Gerätezugriff basierend auf dem Gerätetyp. Apps erhalten immer Zugriff auf einige bekannte Gerätetypen (z. B. Beschleunigungsmesser), die keine personenbezogenen Informationen offenlegen. Andere Arten von bekannten Geräten müssen im Anwendungsmanifest deklariert werden, bevor eine App darauf zugreifen kann. Der Benutzer muss einer App die Berechtigung erteilen, auf Geräte zuzugreifen, die vertrauliche Informationen wie Standort, Webcam und Mikrofongeräte offenbaren oder den Benutzer Geld kosten können, z. B. mobile Breitbandgeräte. |
Ein WPD-Gerät, das MTP-Dienste implementiert. |
Sie können den MTP-Klassentreiber verwenden, oder Sie können einen Treiber mithilfe des WPD-DDI erstellen. Windows 8 bietet Unterstützung für MTP-Gerätedienste. Außerdem kann eine App die Windows.Devices.Portable-Windows-Runtime-API, die COM-API (Portable Device Component Object Model) oder WPD Automation verwenden, um auf das Gerät zuzugreifen. Ihre App muss die Gerätezugriffs-API nicht verwenden. |
Ein Gerät, das über keine von Windows bereitgestellte Klassenerweiterung oder Klassentreiber verfügt. |
Überprüfen Sie in diesem Fall die UWP-Geräte-Apps für interne Geräte für spezialisierte Geräte, um zu ermitteln, ob Sie den benutzerdefinierten Treiberzugriff mithilfe der Gerätezugriffs-API implementieren müssen. |
Sicherheitshinweise
Die folgenden Artikel enthalten Anleitungen zum Schreiben von sicherem C++-Code:
- Bewährte Sicherheitsmethoden für C++
- [Muster & ] Sicherheitsleitfaden für Praktiken für Anwendungen]/previous-versions/msp-n-p/ff650760(v=pandp.10))
Zugehörige Themen
Beispiel für benutzerdefinierten Treiberzugriff, UWP-Geräte-Apps für interne Geräte, Hardware Dev Center