2017-09-15 1 views
0

Je was looking for MSBuild.exe, et je l'ai trouvé à deux endroits différents: un peuQuelle est la différence entre Bin/MSBuild.exe et Bin/amd64/MSBuild.exe

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe 
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\amd64\MSBuild.exe 

Quelle est la différence entre eux et qui dois-je utiliser ?

+0

Microsoft rend généralement les outils de construction disponibles dans leurs versions 32 bits et 64 bits. Où la version 64 bits peut-on s'attendre à gérer des tâches de construction beaucoup plus grandes. Parfois c'est utile, le compilateur C++ par exemple. Parfois, cela n'a aucun sens car l'outil ne peut jamais manquer de mémoire. Comme MSBuild. Un cas-coin est l'outil de construction lui-même ayant à charger une DLL de construction personnalisée 64 bits. Techniquement possible pour MSBuild. Seulement techniquement. –

Répondre

0

Quelle est la différence entre eux?

MSBuild.exe possède deux versions, 32 bits et 64 bits.

Sur les machines 32 bits, le MSBuild.exe existe dans le chemin: C:\Program Files\..\..\Bin\MSBuild.exe

Sur les machines 64 bits, il existe deux versions de l'outil MSBuild.exe. Les outils 32 bits seront sous: Bin\MSBuild.exe et les outils 64 bits sous: Bin\amd64\MSBuild.exe

Si vous voulez connaître quelques différences entre ces deux versions, vous pouvez consulter le blog: Building on Cross targeting scenarios and 64-bit MSBuild.

que dois-je utiliser?

Pour répondre à cette question, vous devez connaître les différences entre le programme 32 bits et le programme 64 bits. Vous pouvez vous référer à this document pour plus de détails.

  1. Si l'ensemble est configuré pour tout CPU alors il fonctionnera comme 64 bits sur une machine 64 bits et x86 comme sur une machine 32 bits. Si l'ensemble est configuré pour x86, il s'exécutera en tant que WOW64 sur un ordinateur 64 bits (processus 32 bits) et en x86 sur un ordinateur 32 bits .

  2. Si l'ensemble est configuré pour x64 alors il fonctionnera comme 64 bits sur une machine 64 bits et ne parviendra pas à exécuter sur une machine 32 bits

Alors vous devez utiliser Bin /MSBuild.exe, qui peut être exécuté sur un ordinateur 64 bits et sur x86 sur un ordinateur 32 bits. En outre, Visual Studio build est équivalent à exécuter MSBuild 32 bits.