Чтение данных с USB-устройства с помощью libusb - PullRequest
1 голос
/ 27 октября 2010
[DllImport("winusb.dll", SetLastError = true)]
internal static extern Boolean WinUsb_ReadPipe(IntPtr InterfaceHandle, Byte PipeID, 
ref Byte Buffer, UInt32 BufferLength, ref UInt32 LengthTransferred, IntPtr Overlapped);

Я использую API для чтения асинхронных данных с USB-устройства, он работает большую часть времени в 32-битных ОС.Но в большинстве случаев происходит сбой в 64-битной системе.

Кто-нибудь может мне помочь, если это проблема с определением API, прошивкой или чем-то еще?

1 Ответ

0 голосов
/ 27 октября 2010

Вы не показываете код, кроме импорта.Мой ближайший вопрос: вы ссылаетесь на 64-битную версию winusb.dll в 64-битных системах?Если ваше приложение скомпилировано для Any CPU, оно будет работать в 64-разрядном режиме в 64-разрядных операционных системах и не сможет выполнять P / Invoke в 32-разрядные библиотеки.

...