Использование классов .NET для связи с USB HID - PullRequest
1 голос
/ 19 февраля 2010

Есть ли разработчики USB, которые используют .NET?

Я знаю, что одним из способов взаимодействия с USB HID-устройством является создание оболочек для Windows API, таких как CreateFile, WriteFile и ReadFile. Но мне интересно, кто-нибудь знает, если вы можете использовать любой из классов .NET, чтобы сделать то же самое. Я уверен, что мне все еще придется использовать некоторые API-интерфейсы для таких операций, как определение устройств на шине и запрос дектриптора, но я ищу метод .NET для отправки / получения отчетов? Я думаю, например, что я мог бы использовать Stream Class или StreamWriter и StreamReader, но я не знаю.

Ответы [ 3 ]

2 голосов
/ 19 февраля 2010

Класс System.IO.FileStream является очень подходящей заменой. Его конструктор вызывает CreateFile (), его метод Read вызывает ReadFile (), его метод Write вызывает WriteFile (). У вас не должно возникнуть проблем с сопоставлением перечислений FileAcces, FileMode и FileShare с соответствующими аргументами CreateFile (). Однако вам придется P / вызвать функции SetupAPI.

1 голос
/ 09 сентября 2010

Возможно, вам повезет больше, если вы используете библиотеку, которая упаковывает все вызовы P / Invoke для вас.Один из них, на который я смотрел, - HidLibrary .

0 голосов
/ 16 февраля 2011

FileStream работает достаточно хорошо для меня, хотя у меня очень простая реализация USB.

Я использую CreateFile для первоначальной настройки устройства, но затем выполняю все операции чтения и записи на устройство через объект FileStream.

...