Existe-t-il un outil permettant de tester directement si une bibliothèque est conçue pour 32 ou 64 bits?
Vous pouvez utiliser l’utilitaire dumpbin
avec l’option /headers
Indique si la bibliothèque a été construite pour une architecture 32 ou 64 bits.
Vérifiez ici pour plus de détails.
Exemple d’utilisation:
c:\>dumpbin libXYZ.lib /headers
Lancez une invite de commandes Visual Studio pour vous assurer que votre chemin peut trouver dumpbin.exe
Pipe to findstr pour économiser sur le gros spew de chaque section et vous pouvez éventuellement utiliser un joker pour parsingr un dossier de libs.
dumpbin /headers *.lib | findstr machine
Exemple de ce que vous cherchez
8664 machine (x64)
Je n’ai pas essayé cela, mais vous pouvez également utiliser file.exe
, l’équivalent du file
unix sur Windows. Vous pouvez télécharger le binary (et la source également) à partir d’ ici ou de la version gnu ici
En Visual Studio, nous pouvons savoir si Lib / dll a 32 ou 64 bits avec Coreflags.exe Cet outil est automatiquement installé avec Visual Studio. nous pouvons exécuter cette commande à partir de la ligne de commande, qui peut être exécutée comme
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\CorFlags.exe whatever_Lib_with_path
Cette commande vous renverra si ce fichier est géré ou non géré. Si c’est géré alors il peut donner des informations à ce sujet est 32/64 bit.