Visual Studio 2010, Crystal Report для Visual Studio 2008 и ClickOnce - PullRequest
5 голосов
/ 01 октября 2010

У меня тут небольшие проблемы. Я обновил один из наших продуктов Winforms с VS2008 до VS2010 около 4 недель назад. Преобразование прошло хорошо, но мы использовали Crystal Reports, поэтому пришлось установить VS2010 Crsytal Reports для Visual Studio 2010 Beta 2. Это было нормально и вернуло мне дизайнер и т. Д. Для Crystal. Я решил не преобразовывать отчеты при открытии решения, чтобы они все еще были настроены для исходной версии Crystal.

Затем мы продолжили разработку в течение 4 недель, и теперь я пришел к своему первому развертыванию ClickOnce в Vsiaul Studio 2010, и у меня возникли серьезные проблемы. Для файлов приложения ClickOnce в качестве предварительных требований установлены модули, связанные с CrystalReports. Я все еще хочу, чтобы конечный пользователь использовал Crystal Reports для VS2008, а не среду выполнения 2010 года, которая смехотворно велика и является бета-версией.

Когда я публикуюсь, манифест говорит, что зависимость для Crystal находится на версии 14.0.2000.0 (версия отчета Crystal Report VS2010), но все ссылки на DLL в проектах настроены на использование определенной версии и указывают на 10.5.3700.0 ( VS2008 версия отчета Crystal). Это означает, что при попытке установки из ClickOnce происходит сбой, говоря:

"Невозможно установить или запустить приложение. Приложение требует, чтобы сборка CrystalDecisions.CrystalReports.Engine версии 14.0.2000.0 сначала была установлена ​​в глобальном кэше сборок (GAC))"

Я не могу понять, почему манифест намеревается использовать этот номер версии, учитывая, что все ссылки указывают на другую версию. Если я связываю кристаллы VS2010, которые являются бета-версией, в развертывание ClickOnce, то клиент получает противоположное сообщение об ошибке, в котором говорится, что требуется 10.5.3700.0 Если я установлю 10.5.3700.0 на клиенте, они получат работающую систему, но мне придется установить версию 10.5.3700.0 вручную, а до этого им сначала пришлось выдержать эпическую установку среды выполнения 2010 (14.0.2000.0), которая не т даже привыкнуть.

По сути, я пытаюсь заставить манифест сказать 10.5.3700.0 или выяснить, почему VS2010 намеревается ввести туда более новый номер версии.

Пожалуйста, помогите. Спасибо

Ответы [ 2 ]

1 голос
/ 04 октября 2010

Я преобразовал решение обратно в VS2008.Возвращение было относительно плавным.Поскольку Crystal находится в бета-версии, время выполнения раньше было смехотворно большим, и я терял большое количество времени на развертывание ClickOnce.Откат решил все три.

Я не рад возвращению, но реалии использования Crystal Reports в 2010 году довольно плохие.Я буду следить за прогрессом со стороны SAP, поскольку знаю, что в этом квартале они стремятся сократить время выполнения и выйти из бета-версии.

0 голосов
/ 03 октября 2010

У вас есть новый CR-компонент, установленный на вашем компьютере, где вы собираете приложение?Если это так, это, вероятно, ссылка на сборки в GAC.

Вы можете попробовать скопировать нужные сборки в проект и установить ссылку, чтобы она указывала на локальные копии, а затем в наборе ссылок "copy local" на true.Это будет гарантировать, что он ссылается на локальные копии, а не на те, что находятся в GAC.

Если это не сработает, я бы попытался скопировать необходимое условие для предыдущей версии Crystal Reports из папки VS2008 в папкуПапка VS2010.Вы найдете пакеты здесь:

C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v6.0A \ Bootstrapper \ Packages (64-разрядная машина)
C: \ Program Files \ MicrosoftSDK \ Windows \ v6.0A \ Bootstrapper \ Packages

Затем закройте и снова откройте Visual Studio, и старое условие должно появиться в VS и позволить вам выбрать его.

...