Где gacutil.exe?

Я использую Windows 7 Enterprise 32 бит. Я использовал командную строку Windows, а также использовал командную строку VSTS 2008, но при выполнении gacutil.exe команда не обнаружила ошибку.

Мне интересно, нужно ли устанавливать gacutil.exe откуда-то, или gacutil.exe находится где-то еще на моем компьютере (я искал свой компьютер, но нашел несколько файлов, называемых gacutil.exe, я не знаю, ))

Кстати: я использую .Net 3.5.

Ответ 1

gacutil поставляется с Visual Studio, а не с VSTS. Он является частью SDK Windows и может быть загружен отдельно в http://www.microsoft.com/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF&displaylang=en. Эта установка будет включать gacutil.exe. Но сначала проверьте его здесь.

C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin

возможно, он установлен.

Как отметил @devi

Если вы решили захватить файлы gacutil из существующей установки, отметьте что из .NET 4.0 есть три файла: gacutil.exe gacutil.exe.config и Тысяча тридцать-три/gacutlrc.dll

Ответ 2

  • Откройте команду командной строки разработчика.
  • типа

где gacutil

Ответ 3

Вы можете использовать версию в Windows SDK, но иногда это может быть не та же самая версия .NET Framework, что вы используете, что вызывает следующую ошибку:

Microsoft (R).NET Глобальная утилита кэширования сборок. Версия 3.5.21022.8 Copyright (c) Корпорация Microsoft. Все права защищены. Невозможность добавления сборки в кэш: эта сборка построена с помощью среды выполнения, более новой, чем текущая загруженная среда выполнения, и не может быть загружена.

В .NET 4.0 вам нужно искать в Microsoft SDK v8.0A, например: C:\Program Files (x86)\Microsoft SDK\Windows\v8.0A\bin\NETFX 4.0 Инструменты (в моем случае у меня есть только 32-разрядная версия, установленная Visual Studio 2012).

Ответ 4

В Windows 2012 R2 вы не можете установить Visual Studio или SDK. Вы можете использовать powershell для регистрации сборок в GAC. Мне не нужно было никакой специальной установки.

Set-location "C:\Temp" [System.Reflection.Assembly] :: Load ("System.EnterpriseServices, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a") $ publish = новый-объект System.EnterpriseServices. Internal.Publish $ publish.GacInstall("C:\Temp\myGacLibrary.dll")