Использовать libusb с Delphi в Windows 64-bit? - PullRequest
2 голосов
/ 26 января 2011

Прочитав немного, я обеспокоен тем, что мое 32-разрядное приложение Delphi не сможет использовать 64-разрядный драйвер libusb в Windows 7 и других 64-разрядных системах Windows, и что оно будет не сможет общаться с моим пользовательским аппаратным устройством в этих системах. Это правда? Если да, есть ли обходной путь? Я что-то упустил на этой картинке?

Ответы [ 3 ]

5 голосов
/ 26 января 2011

Что именно заставляет вас думать, что это не так?Если у вас 64-битный драйвер, его можно использовать в 64-битной системе (учитывая, что драйвер работает нормально и подписан правильно).Как 32-разрядные, так и 64-разрядные приложения могут управлять драйвером с помощью различных механизмов связи, таких как файлы Ioctl или MMF.Вопрос в том, правильно ли написаны все части кода, но этот вопрос относится к любой библиотеке и к любой платформе

.
4 голосов
/ 26 января 2011

В libusb 1.0 с бэкэндом WinUSB (драйвер Microsoft включен в Windows) у нас нет проблем с ним общаться из приложения x86 (управляемая библиотека c ++, используемая приложениями C #).Поведение одинаково на платформах x86 и x64.

Я не знаю насчет libusb 0.1 (старой версии, которая может использовать драйвер ядра libusb-win32), но в качестве точки ссылкидо версии 1.0 вы, похоже, не используете это.

В какой-то момент libusb 1.0 будет поддерживать драйвер ядра libusb-win32, но за исключением особых случаев это не нужно (WinUSBесть некоторые ограничения, но я никогда не сталкивался с ними)

2 голосов
/ 26 января 2011

Я успешно использую libusb-win32 на моем 64-битном ноутбуке Win7 с 32-битным приложением delphi.Пока проблем нет.Драйвер тоже подписан (только мой файл .inf - нет).

Обратите внимание, что libusb-win32 использует "старый" API libusb.

...