Я сделал сборку в платформе .net, которую собираюсь опубликовать в GAC, но не могу найти gacutil
ее.
Некоторое время я гуглил и нашел много предложений, но ничего не работает:
- Скопируйте сборку в% window% \ assembly
[DOES NOT WORK]
- Скопируйте сборку в% window% \ Microsoft.NET \ assembly
[DOES NOT WORK]
- C: \ Program Files \ Microsoft SDKs \ Windows \ v6.0A \ Bin \ gacutil.exe / i "сборка"
[returns an error: this assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded]
Есть ли у кого-нибудь идея решить это?
VS 2012/13 Win 7 64-битный файл gacutil.exe находится в
источник
В стандартную установку .net 4.0 не входит Gacutil. Они также переместили GAC из% Windir% \ assembly в% Windir% \ Microsoft.NET \ Assembly.
Они даже не удосужились добавить «специальное представление» для папки в проводнике Windows, как они это сделали для .net 1.0 / 2.0 GAC.
Gacutil является частью Windows SDK, поэтому, если вы хотите использовать его на своем компьютере для разработки, просто установите Windows SDK для вашей текущей платформы. Тогда вы найдете это где-то так (в зависимости от версии SDK):
Здесь обсуждается новый GAC: .NET 4.0 имеет новый GAC, почему?
Если вы хотите установить что-то в GAC на производственном компьютере, вам нужно сделать это «правильным» способом (gacutil никогда не предназначался как инструмент для установки чего-либо на производственные серверы, а только как инструмент разработки) с помощью установщика Windows, или другими инструментами. Вы можете сделать это, например, с помощью PowerShell и dll System.EnterpriseServices.
В общем плане, и идет от нескольких лет опыта, я бы лично настоятельно рекомендуем против использования GAC вообще. Ваше приложение всегда будет работать, если вы также развернете DLL с каждым приложением в его папке bin. Да, вы получите несколько копий DLL на своем сервере, если у вас есть, например, несколько веб-приложений на одном сервере, но определенно стоит гибкость, позволяющая обновлять одно приложение, не нарушая работу других (путем введения несовместимой версии общего DLL в GAC).
источник
На самом деле сейчас существует утилита GAC для .NET 4.0. Он находится в SDK Microsoft Windows 7 и .NET 4.0 (SDK поддерживает несколько ОС, а не только Windows 7, поэтому, если вы используете более позднюю ОС от Microsoft, велика вероятность, что она поддерживается).
Это SDK . Вы можете загрузить ISO-образ или выполнить установку через Интернет. Если вам нужен только GAC Util, то это своего рода излишняя загрузка; однако это действительно работает.
источник