#c_sharp #wpf
Вопрос: Я использую в своем приложении сборку Extended WPF Toolkit и разворачиваю свое приложение через ClickOnce, но при установке дистрибутива , подготовленного ClickOnce, получаю: "Невозможно установить или запустить приложение. Для этого приложения необходимо сначала установить сборку WPFToolkit.Extended Версия 1.6.0.0 в глобальный кэш сборок (GAC)." При попытке зарегистрировать сборку с помощью gacutil.exe получаю сообщение: Microsoft (R) .NET Global Assembly Cache Utility. Version 3.5.30729.1 Copyright (c) Microsoft Corporation. All rights reserved. Failure adding assembly to the cache: Сборка создана в более поздней версии среды выполнения чем текущая, и не может быть загружена. Приложение без инсталлера нормально запускается, но я хотел опробовать сделать обновление программы, а в ClickOnce оно вроде как реализовано. Windows Installer же регистрирует сборку в GAC , но тогда надо что-то другое придумать с обновлениями.
Ответы
Ответ 1
Первоначальная проблема именно в том, что сборка, отмеченная Copy Local, не копируется в папку bin. Это вызвано старым багов в студии - для референсов, добавленных из GAC, в свойствах отображается Copy Local = true, но при билде сборки на самом деле не копируются. Для обхода бага достаточно поменять Copy Local на false, и потом обратно на true. Это добавит в csproj-файл элементTrue :Баг в том, что при добавлении новой сборки Copy Local проставляется в true по умолчанию. Но при этом сам флаг не сохраняется в файл проекта. При билде же студия использует флаг из файла проекта, и при его отсутствии - пропускает сборки из GAC. Пост на MSDN Blogs - The "Copy Local" Bug in Visual Studio В новых версиях студии это исправлено, по крайней мере на 2013 Update 4 баг не воспроизводится. {01C58D27-9818-45D6-A0B6-8EF765CA9397} CoreServices %28CoreServices\CoreServices%29 True Ответ 2
Как вариант, попробуйте рантайм дотнета обновить на той машине, на которой появляется сообщение Сборка создана в более поздней версии среды выполнения чем текущая, и не может быть загружена.
Комментариев нет:
Отправить комментарий