Какой gacutil.exe следует использовать?

Итак, на Win 2008 R2 Std x64 у меня есть 6 (шесть) gacutil.exe, все разные (не считая тех, что в папках VS), в:

  1. c:\Program Files\Microsoft SDK\Windows\v6.0A\Bin
  2. c:\Program Files\Microsoft SDK\Windows\v6.0A\Bin\x64
  3. c:\Program Files (x86) \Microsoft SDK\Windows\v7.0A\Bin
  4. c:\Program Files (x86)\Microsoft SDK\Windows\v7.0A\Bin\x64
  5. c:\Program Files (x86)\Microsoft SDK\ Windows\v7.0A\Bin\NETFX 4.0 Tools
  6. c:\Program Files (x86)\Microsoft SDK\Windows\v7.0A\Bin\NETFX 4.0 Tools\x64

Вопросы:

  1. Есть x64версии имеют какое-то различие в поведении?
  2. Должен ли я предпочесть v7.0Aверсии другим v6.0A?
  3. Должен ли я использовать версии NETFX 4.0 Toolsдля сборок .NET 4.0 и «стандартную» версию для остальных?

Или, если есть какая-нибудь статья общего типа по теме, буду признателен.

Обновление 1. Относительно ответа Ханса Пассана :

  1. gacutil.exe— это инструмент .NET Framework , являющийся частью «Инструментов сборки, развертывания и настройки ( .NET Framework)", так как сейчас это устаревшее (!) shfusion.dll;
  2. Действительно, версия 6.0A взята из установки VS2008 и может быть проигнорирована (1, 2);
  3. Теория 64-битного объяснения также звучит разумно. Я также предполагаю, что, скорее всего, существует версия gacutil для IA64.exe, так что это как «копия инструмента для каждой платформы», просто так получилось, что версия x86 везде работает нормально из-за WoW64. Минус 2 версии gacutil из списка (4, 6);
  4. Часть о том, какую версию использовать, кажется неправильной. gacutil.exe версии 4.0 обнаруживает и размещает сборки в соответствии с целевой средой CLR и отлично работает как для .NET 4.0, так и для сборок более ранних версий. Так вот вопрос, зачем оставлять v2.0 gacutil.exe? Я предполагаю, что для развертывания в средах, где .NET4.0 недоступен.
  5. Вопрос о том, использовать или не использовать GAC, не стоял. Поэтому оставляю последний абзац без комментариев.

Обновление 2.

Итак, мне кажется, что можно безопасно использовать либо номер 3 (тогда .NET4.0 недоступен), либо номер 5 в противном случае для всех операций GAC в Windows x86 и x64. И ответы на вопросы:

  1. Нет.
  2. Неважно, но использование более новых версий кажется более логичным.
  3. Нет, вы всегда можете использовать версию NETFX 4.0 Tools(если доступна .NET4.0) для всех операций GAC.

10
задан Community 23 May 2017 в 11:45
поделиться