66 votes

J'ai une librairie statique, y a-t-il un moyen simple de savoir si elle est pour 32 ou 64 bits ?

Existe-t-il un outil permettant de tester directement si une bibliothèque est faite pour 32 ou 64 bits ?

65voto

Jet Set Willy Points 44

Exécutez une invite de commande Visual Studio pour vous assurer que votre chemin peut trouver dumpbin.exe.

Pipe to findstr afin d'économiser le long discours sur chaque section et optionnellement vous pouvez utiliser un joker pour analyser un dossier de libs.

dumpbin /headers *.lib | findstr machine

Exemple de ce que vous recherchez ;

8664 machine (x64)

60voto

Alok Save Points 115848

Vous pouvez utiliser dumpbin l'utilité avec /headers option

Il retourne si la bibliothèque a été construite pour une architecture 32 ou 64 bits.

Vérifiez Référence DUMPBIN pour les détails.

Exemple d'utilisation :

c:\>dumpbin libXYZ.lib /headers

5 votes

Cela fonctionne, recherchez la section 'FILE HEADERS'.

1voto

Vikram.exe Points 2602

Je n'ai pas encore essayé, mais vous pouvez aussi utiliser file.exe le système unix file équivalent sous Windows. Vous pouvez télécharger le binaire (ainsi que les sources) à l'adresse suivante ici ou la version gnu ici

1 votes

C'est juste l'outil standard GNU File, non ? J'ai essayé avec file à partir d'une version récente de MinGW de Git pour Windows, et il dit current ar archive pour le x64 python36.lib distribué avec Python 3.6 (Windows).

-1voto

Ayush joshi Points 297

Dans Visual Studio, nous pouvons savoir si la lib/dll est 32 ou 64 bits avec Coreflags.exe. Cet outil est automatiquement installé avec Visual Studio. Nous pouvons exécuter cette commande depuis la ligne de commande, qui peut être exécutée comme suit

 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\CorFlags.exe whatever_Lib_with_path

Cette commande vous retournera si ce fichier est géré ou non. Si son géré alors il peut donner des informations sur le fait que c'est 32/64 bit.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X