.NET Framework - Recommendations for C# USB library?

Asked By tporter on 07-Mar-11 11:25 AM
HI All --

I have used google - tried a few, but am interested in any other
thoughts or maybe ones I have missed. For the life of me, I cannot
inderstand why MS does not have a native library for USB.

Thx, Tom




Peter Duniho replied to tporter on 07-Mar-11 11:33 AM
Maybe it is because supporting specific USB hardware requires a device
driver, and you cannot write device drivers in managed code.
Arne_Vajhøj replied to tporter on 07-Mar-11 07:50 PM
.NET framework do have support for USB devices that
can be accessed as serial ports.

.NET framework can obviously not support USB devices
that requires a custom driver, because it would have
no idea about what to do with it.

MS could have chosen to support USB devices that uses one
of the generic USB drivers (like HID), but for
whatever reasons they did not.

There are plenty of external libs to provide
that.

When I google I find stuff like:
http://code.google.com/p/csharp-usb-hid-driver/
http://www.developerfusion.com/article/84338/making-usb-c-friendly/
http://www.icsharpcode.net/opensource/sharpusblib/
http://sourceforge.net/projects/libusbdotnet/

Try them and pick the one that works best for you.

Arne
Arne Vajhøj replied to Peter Duniho on 07-Mar-11 07:54 PM
There are generic device drivers for many USB device classes.

Arne
Peter Duniho replied to Arne Vajhøj on 07-Mar-11 08:01 PM
True. So? Your point eludes me.
Arne Vajhøj replied to Peter Duniho on 07-Mar-11 08:37 PM
You do not need to write a device driver for many (maybe most)
devices.

Arne
Peter Duniho replied to Arne Vajhøj on 07-Mar-11 10:43 PM
I still do not understand the relevance.  The presence of an existing
driver for a certain class of USB devices does not a "USB library" make.

I suppose it is possible the OP does not really want a "USB library".  If
you are making that assumption, then your comments make more sense (but
then the question remains whether it is a valid assumption to
make???nothing in the original message suggests it is).  But if you are not
making that assumption, then it does not matter what existing drivers
exist; they do not constitute a "USB library".

Pete
tporter replied to Arne_Vajhøj on 08-Mar-11 11:31 AM
Thanks to you all. I did not precisely word my question, but I
understand both Peter's & your comments.

I have another unrelated question that maybe should be put in a new
thread, but I thought I'd be lazy & ask it here:

When during the programming/compiling/debugging of a C# program should
the option to, "Clean Solution" be used? Are there any general rules?

Thanks, Tom
Jeff Johnson replied to tporter on 08-Mar-11 03:57 PM
Heh, my general rule is "when things go screwy." Sometimes you get a bad DLL
in your output folders or something and weird bugs crop up. At time like
this you wipe the slate clean and rebuild.

There may be better, more "official" reasons....
Arne Vajhøj replied to Peter Duniho on 08-Mar-11 06:38 PM
It means that your explanation of why MS did not provide it can
not be true.


Exactly.

Which is why the fact that you  can not write drivers in managed
code is not a good explanation for why MS is not providing an
USB library.

Arne