copy from http://libusbdotnet.sourceforge.net