MSBuild Click-Once проблемы с манифестом - PullRequest
3 голосов
/ 13 ноября 2009

При публикации приложения ClickOnce с MSBuild появляется следующая ошибка. У меня есть задача перед публикацией, которая копирует правильный файл app.config в проект перед публикацией, и это единственное, что, я думаю, может быть причиной этой ошибки. Как я могу это исправить?

Следующие сообщения об ошибках были обнаружено: файл, MyApplication.exe.config, имеет вычисляемый хеш, отличный от указанного в манифесте.

Ответы [ 3 ]

4 голосов
/ 17 декабря 2009

Вы копируете файл после генерации хэша.

Вам необходимо скопировать файл во время BUILD и перед ОПУБЛИКОВАНИЕМ. Механизм ClickOnce считает, что там происходит вмешательство.

3 голосов
/ 01 февраля 2010

Ответ Бретта верен, цель GenerateManifests запускается в середине цели CoreBuild (в Microsoft.Common.targets), поэтому лучшее место для обновления файла сборки - это в BeforeBuild .

Я предполагаю, что причина, по которой вы переключаете app.config, состоит в том, чтобы заменить конфигурацию той, которая имеет правильные значения для среды, которую вы публикуете? Если это так, прочитайте мою публикацию о публикации в нескольких средах ..., которая поможет ответить на вопросы типа «как переопределить цель BeforeBuild?».

1 голос
/ 18 июня 2010

Подпишите манифесты однократного нажатия и (заново) создайте тестовый сертификат для вашего приложения на вкладке подписи в свойствах проекта ... Это решило проблему для меня. Удачи

...