Utiliser libusb avec Delphi sur Windows 64-bit?
après un peu de lecture, je m'inquiète que mon application Delphi 32 bits ne sera pas en mesure d'utiliser libusb pilote 64 bits sur Windows 7 et d'autres systèmes de fenêtres 64 bits, et qu'il ne sera pas en mesure de parler à mon périphérique matériel personnalisé sur ces systèmes. Est-ce vrai? Si oui, est-il une solution de contournement? Est-ce que je rate quelque chose sur cette photo?
3 réponses
sur libusb 1.0 avec le backend WinUSB (pilote Microsoft inclus avec windows) nous n'avons aucun problème pour communiquer avec lui à partir d'une application x86 (bibliothèque C++ gérée utilisée par les applications C#). Le comportement est le même sur les plateformes x86 et x64.
Je ne connais pas libusb 0.1 (l'ancienne qui peut utiliser le pilote du noyau libusb-win32) mais comme votre point de lien vers la version 1.0, vous ne semblez pas l'utiliser.
à un moment donné, libusb 1.0 prendra en charge le pilote libusb-win32 du noyau, mais sauf dans des cas spécifiques, ce n'est pas nécessaire (WinUSB a certaines limitations mais je ne les ai jamais rencontrées)
Qu'est-ce qui vous fait croire que non? Si vous avez un pilote 64 bits, il est utilisable sur le système 64 bits (étant donné que le pilote fonctionne bien et est signé correctement). Les applications 32 bits et 64 bits peuvent contrôler le pilote via divers mécanismes de communication, tels que les fichiers Ioctl ou MMF. La question Est de savoir si toutes les parties du code sont écrites correctement, mais cette question s'applique à n'importe quelle bibliothèque et sur n'importe quelle plate-forme
j'utilise libusb-win32 avec succès sur mon ordinateur portable Win7 64 bits avec une application delphi 32 bits. Pas de problèmes jusqu'à présent. Le pilote est signé, trop (seulement mon .fichier inf n'est pas).
notez que libusb-win32 utilise l '"ancienne" API libusb.