2010-05-10 11 views
22

Gibt es eine API in .NET (C#) für die Verwendung von USB HID (Human Interface) -Geräten?.NET API für HID (USB)?

+0

Duplate Frage: http://stackoverflow.com/questions/68749/working-with-usb-devices-in-net –

+1

Nicht ganz ein Duplikat - diese Frage befasst sich mit HID (was ich vermute, bedeutet "treiberlosen" HID), so dass die Antworten auf die andere Frage nicht alle auf diese eine Anwendung finden. – HanClinto

+0

Nein - HID bedeutet eigentlich alle existierenden oder noch nicht erfundenen Geräte, mit denen Menschen interagieren können oder nicht so viel interagieren. Sei es ein Temperatursensor oder eine Taste oder ein Kolorimeter. Einige Daten ein, einige aus (geringe Mengen) – Robetto

Antwort

1

Ich schlage vor, Sie hier beginnen: http://wiimotelib.codeplex.com/

+0

Warum? Eine Nintendo Wiimote-Bibliothek !? – jco

+2

Da die Wiimote ein HID-Gerät unter Windows ist, und das Codeplex-Projekt hat alle p/Invoke Arbeit benötigt, um mit einem HID-Gerät aus der CLR für Sie in der HDImports-Klasse – squig

+0

getan kommunizieren Dies beantwortet die Frage nicht. –

3

Es gibt nichts direkt oder auf hohem Niveau. Es gibt einige Dinge, die Sie über die verwaltete WMI-API tun können, aber ich persönlich habe festgestellt, dass viele WMI-Interaktionen mit der Hardware bestenfalls kryptisch sind und viel Trial-and-Error erfordern, um das zu erreichen, was Sie wollen. Jemand auf CodeProject hat eine .NET component for USB HDI entwickelt, die Sie ausprobieren können, die wahrscheinlich die Rechnung besser als WMI passt.

2

Ich würde vorschlagen, dass Sie stattdessen this example folgen. Es war von unschätzbarem Wert, um mich mit HiD Dev in C# zu starten.

10

HidLibrary schließt alle P/Invoke-Anrufe für Sie ein. Aber nein, es sieht nicht gut aus, es gibt nette Framework-APIs für den Umgang mit USB-Geräten.

+4

+1 für HidLibrary; Ich fing an, die Straße zu gehen, um meine eigene C# -Wrapper-Lib für die Kernel32 und Hid.dlls zu rollen. HidLibrary hat die harte Arbeit (meistens) bereits erledigt und bietet dazu eine saubere, einfache API. Ich habe mich erstaunlich schnell auf den Beinen gehalten (wie, Minuten). Und du kannst es mit nuget installieren, was nett ist. Es gibt andere C# hid.dll Wrapper-Bibliotheken, aber nichts ist so sauber, dass ich gesehen habe. – ptrandem

+0

Diese Bibliothek wird nicht mehr unterstützt. – tarabyte

1

Versuchen Blick auf diese: Simple HID Library. Die Hauptseite enthält eine Liste anderer Open-Source-Bibliotheken.

+0

Es ist sehr instabil, vor allem auf Win7 –

3

Here's Mine kleine lib für den Umgang mit HIDs. Könnte nützlich sein, besonders wenn Sie versuchen, mit rohen HID-Berichten zu kommunizieren. Ich habe auch included eine einfache Demonstration, wie man es benutzt.