2015-07-21 16 views
0

У меня был файл установки из моего приложения winform. Потом я подключаю его к другому компьютеру, все работает нормально, однако, когда я нажал на кнопку SaveToPDF, которая сохраняет GridView в PDF файлНе удалось загрузить файл или сборку itextsharp

Я столкнулся с этой ошибкой:

Не удалось загрузить файл или сборку itextsharp, Version = 4.1.6.15, Culture = neutral, PublicKey Token = 8354ae6d2174ddca ' или одна из его зависимостей. Система не может найти указанный файл.

Если я запускаю приложение из визуальной студии, все работает очень хорошо. Поэтому при создании установочного файла iTextSharp может быть потерян или при установке с момента утери iTextSharp. Я застрял в этой проблеме и не знаю, как исправить. Любая помощь будет оценена по достоинству.

ответ

3

Щелкните правой кнопкой мыши по iTextSharp и выберите «Свойства». Установите для параметра «Копировать локальное» значение «Истина».

Также я бы рекомендовал использовать NuGet для управления пакетами. Если установка Copy Local не работает или если он уже установлен верно, удалить ссылку и с помощью менеджера пакетов консоли введите следующее:

Install-Package iTextSharp 

UPDATE:

Я попытался с 2015 проб InstallShield. Вот мой опыт. Я предполагаю, что это уместно для вашей проблемы:

Я пробовал базовый проект MSI и в Application File я указал основной вывод проекта с помощью сборки iTextSharp. Когда я построил проект, у меня появилась ошибка «-6213 - Внутренняя ошибка сборки». По-видимому, это известная проблема с .NET-проектами. Вот их статья, предлагающая обходное решение: https://flexeracommunity.force.com/customer/articles/en_US/ERRDOC/Q109089

Предложение отключается. Зависимость сканирования при сборке. Я сделал это, и проект был составлен отлично. Но когда я его установил, только exe для приложения был развернут, а iTextSharp не был. Так что это может быть ваше дело. Вы помните об отключении зависимостей сканирования?

Я удалил вывод проекта и добавил нужные файлы вручную. На этот раз он дал еще одну внутреннюю ошибку, но исправил ее своим предложением (заменив ISWIScanners.dll новым, который они предоставляют и перестраивает). На этот раз я мог бы получить все файлы, которые я хотел развернуть, но, конечно, это не идеально.

Я бы предложил добавить файлы вручную и применить обходной путь. В качестве альтернативы вы можете предоставить Wix (http://wixtoolset.org) go - бесплатный установщик с открытым исходным кодом. Я не использовал его сам, но слышал его на подкасте DotNetRocks. Это бесплатно, так что это может стоить того.

Надеюсь, это вам поможет.

+0

, чтобы быть уверенным, из визуальной студии я открыл проект, а затем открыл ссылки из приложения-исследователя и установил, что локальная копия верна правильно? Потому что я закончил работу с тем же вопросом, кстати, я использовал NuGet для установки iTextSharp в первую очередь. – BarisY

+0

Хм .. так что вы сказали, что можете успешно построить проект, верно? Не могли бы вы проверить папку bin \ Debug (или Release), чтобы проверить, есть ли там iTextSharp DLL? –

+0

Прошу прощения за ambuguity, нет проблем с отладкой, когда я отлаживаю программу. Он работает довольно хорошо, но после того, как я создал новый проект и создаю файл установки с помощью мастера установки, чтобы установить приложение на другой компьютер, Я установил это приложение winform на другой компьютер, то есть когда я столкнулся с этой ошибкой. Редактировать: iTextSharp.dll находится в том же месте с файлом winformApp.exe – BarisY