Frage

Ich frage mich, warum der .NET-Framework für die Arbeit mit USB-Treiber alle verwalteten Methoden nicht bieten. Von allem, was ich habe müssen Sie noch in die Windows-API aufrufen lesen und nutzen Rangier- und PInvoke und den ganzen Mist, dass keiner von uns .NET-Programmierer zu tun haben wollen. Warum bietet .NET-Methoden für mit seriellen Schnittstellen kommunizieren aber nicht USB-Ports? USB hat sich viel weiter verbreitet werden, dass serielle Ports jetzt, ist es nicht Zeit, sie es in den Rahmen eingebaut?

War es hilfreich?

Lösung

Wie alle anderen Funktionen in .NET Framework kommt es nach unten gegen Lohn kosten. Mit jeder neuen Version von .Net müssen die Besitzer sind sehr schmerzhafte Schnitt Entscheidungen für Funktionen machen. Es gibt einfach zu viele Anfragen / will sie alle satsify. Diejenigen, die gewählt sind, brauchen klaren Wert zu einem vernünftigen Preis zur Verfügung zu stellen.

Meine Vermutung ist, dass serielle Ports, während wahrscheinlich weniger populär als USB, sind einfach leichter in verwaltetem Code zu implementieren. Daher, obwohl die Verwendung möglicherweise nicht so hoch sein, die relativ leicht zu implementieren sie sie über die Spitze setzen.

Andere Tipps

USB ist nur ein Bus. Die Art und Weise an das Gerät kommunizieren, hängt von dem Chip auf der anderen Seite des Busses. Es gibt keine standardisierte Art und Weise auf alle Geräte zu sprechen.

Wenn ein USB-Gerät Anbieter das Gerät mit einem Standard-Weg machen möchten (die meisten von ihnen den Normen wurden, entsprechen Kosten zu sparen zu entwickeln, zu dokumentieren und erziehen Kunden über ihre APIs), können ihre Fahrer Programmierer Treiber schreiben, die machen Gerät zur Verfügung, um verschiedene Windows-APIs (massive Lagerung, WIA, Directshow, virtuelle serielle Schnittstelle, bluetooth, Human Interface Device, etc). Auch hier sind seit standardisierte Treiber bereits auf Windows API ausgesetzt, gibt es keine Notwendigkeit für .Net direkt auf die Hardware zu sprechen.

Wenn Sie suchen, mit einem HID-kompatibelen USB-Gerät als Schnittstelle Sie können einen Blick auf CC .USBHID . Es ist alt und böse, aber vielleicht bekommen Sie in der richtigen Richtung. Es könnte reifere Projekte zur Verfügung.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top