lilian87 Ответов: 4

Crystal report load error on c# setup


У меня есть exe-файл моего проекта c#.Я использую crystal reports для создания отчетов и включил Crystal report runtime в качестве одного из своих предварительных условий. я установил Кристалл во время выполнения отчета для VS2008.Но
Когда я хочу просмотреть свои отчеты на другом компьютере, отображается ошибка.
CrystalDecisions.Shared.CrystalReportsException: Load report failed. ---> System.Runtime.InteropServices.COMException (0x80004005): The system cannot find the path specified.
   at CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Object& DocumentPath, Int32 Options)
   at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object& DocumentPath, Int32 Options) at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()


Мой код включает в себя эту строку:
cryrpt.Load("D:\\C# projects\\project\\project1\\CrystalReport7.rpt");
У меня есть 1 сомнение, то есть мой exe-файл находится в другом месте другого компьютера.Если я открою CrystalReport7.rpt из этого места, смогу ли я его просмотреть? Если нет,то как изменить путь ?

panditramesh

как я могу решить эту проблему, когда я запускаю отчет crystel, а затем ошибаюсь в этом пространстве имен "CrystalDecisions".

lilian87

используйте пространство имен-
используя CrystalDecisions.Общий;
используя CrystalDecisions.CrystalReports.Двигатель;

4 Ответов

Рейтинг:
26

thatraja

Проверить этот прием

Crystal Reports: Исправлена ошибка "Load report failed".[^]

РЕДАКТИРОВАТЬ



Я хочу установить динамический путь в crystal report viewer?[^]

EDIT2

Проверять класс приложения[^] который содержит много путей
Здесь вам нужно Приложение.ExecutablePath[^] или Приложение.StartupPath[^] Собственность

Простой совет заключается в том, что во время отладки вы можете проверить путь из вашего кода и внести изменения в соответствии с вашими требованиями, что не имеет большого значения. Закончить ее.

Поздравляю вас с наступающим Новым годом! :роза:


lilian87

Спасибо за ответ. Но это не то, чего я хочу.После установки,на другом компьютере мои отчеты не работают,его отображение ошибки-отчет о загрузке не удалось.

thatraja

Вы полностью прочитали этот совет/трюк? Есть несколько сценариев.

lilian87

да, я прошел через это. У меня нет никаких проблем с запуском отчетов на моем компьютере.Когда я устанавливаю project exe на другой компьютер, я не могу его открыть. Это дает отчет об ошибке-загрузка не удалась.. Есть решение?

thatraja

Проверяем случае Неверный путь к файлу или имя файла в том, что прием
Используйте относительные пути(путь запуска приложения или Путь к исполняемому файлу) вместо путей жесткого кода. Поместите файлы отчетов в папку приложения.

lilian87

У меня тоже есть такое же сомнение.Может быть, неверный путь к файлу. когда мы нажимаем crystalreport.rpt на нашем решении, мы получаем путь к файлу.Я использовал этот путь в своем коде.Но он указывает на диск D: моего компьютера.Если я запускаю это приложение на любом другом компьютере, будет ли оно идентифицировать это местоположение? вместо того чтобы использовать этот путь, как я могу изменить путь, указав "мое имя компьютера и полный путь к отчету"?

thatraja

Вот почему я сказал использовать относительный путь вместо жесткого пути кода. Проверьте мой обновленный ответ еще раз.

lilian87

Можете ли вы помочь мне в том же самом с любым примером?? или часть кода для "отображения отчета по нажатию кнопки"?

thatraja

Вы проверили 2-ю ссылку в моем ответе? Вот и все.

lilian87

Извините за поздний ответ. Я проверил связь. Но проблема в том, что когда я снова использую относительные пути, возникает ошибка, потому что путь неправильный.Я скопировал отчеты crystal reports в папку release, но ошибка все равно появляется.Что же мне делать?

thatraja

Вы скопировали файлы ob, но установили ли вы правильный путь? проверьте 2-ю ссылку в ответе

lilian87

Я думаю, что теперь ты меня выгонишь..
Потому что, если я использую относительные пути ее показывает отчет загрузить не удалось.
report.Load(приложение.StartupPath + "CrystalReport7.rpt");
Путь-это bin\release.Если я использую жесткий код, он будет работать.Но в обоих случаях он не работает на другом компьютере.

thatraja

Проверьте мой обновленный ответ

thatraja

Вы ее разгадали?

lilian87

Спасибо за ответ!! и вам тоже желаю нового года...
Я воспользовался кодом-
report.load(приложение.StartupPath+"\\CrystalReport7.rpt");
Теперь он работает.. Большое спасибо за ваше терпение и доброту.

gsspartners

у меня есть такая же проблема, после установки, когда я запускаю приложение на другой системе, я получаю ошибку входа в систему Crystal Report. Я пробовал разные вещи, но безуспешно, я пытался использовать TableLogonInfo, dataset, дал путь к Crystal report, такие вещи доступны в GOOGLE, но бесполезны. Пожалуйста, помогите мне исправить это. Если кто-то может помочь мне с простой Кристалл печать отчета при клике на кнопку просто за идею, я apperciate.Помогите мне с этой ошибкой, спасибо в предвкушении.


Лилиан -> Plz помогите мне с ним, так как у вас была та же проблема.

Спасибо

thatraja

Вы проверили 1-ю ссылку в моем ответе? Каково полное сообщение об ошибке? упомянуть об этом

gsspartners

thatraja я пробовал использовать report.load(приложение.StartupPath+"\\CrystalReport4.rpt"); ошибка
поэтому я попробовал (System.домен приложений.CurrentDomain.BaseDirectory +"\\CrystalReport4.rpt")
но это это также дает мне ошибку я перепробовал много вещей я запутался
я бы действительно апперицировал, если бы вы могли дать мне полный код...при загрузке страницы
или дайте мне простую кодовую ссылку, которая может мне помочь.
Ошибка: то, что я получаю, - это ошибка загрузки или(иногда) всплывающее окно входа в crystal report
спасибо в предвкушении

lilian87

Вы можете запустить отчет на своем компьютере, а не на другом компьютере.. разве это не ваша проблема?Ошибка, которую я получил, была "ошибка загрузки отчета".Это та же самая ошибка, которую вы получаете?

Если это так, то 1.добавьте Crystal Report Runtime в качестве предварительного условия.

2.Измените путь загрузки отчета crystal на

report.load(приложение.StartupPath+"\\CrystalReport4.rpt");

3.Включите файлы отчета в папку проекта.Это может вам помочь.. Попробуй!!

lilian87

Проверьте ссылки в этом решении.. Это было полезно для меня.. что такое сообщение об ошибке?

gsspartners

Привет,извините за опоздание на моем ПК(development pc), когда я запускаю установку, отчет не загружается, хотя открывается crystal reportviewer. На других системах то же самое приложение после установки дает crystal report Login error, plz help me through

thatraja

Вам не нужно жестко кодировать. Храните файлы отчетов в папке проекта. И используйте относительный путь. Это все. Попробовать это.

swapnilKumbhar

Но перед развертыванием приложения,если проект необходимо переместить на другой компьютер.
Как установить путь.
неужели я должен жестко закодировать его?

thatraja

Вам не нужно жестко кодировать. Храните файлы отчетов в папке проекта. И используйте относительный путь. Это все. Попробовать это.

Рейтинг:
1

SRoy_5

У меня была та же проблема

error downloading the fileCrystalDecisions.Shared.CrystalReportsException: Load report failed. 


Мой ЭПР работал правильно в локальном режиме и сохранил pdf-файл в sharepath, но после перемещения его в dev он перестал работать и начал показывать ошибку.


Решение: добавьте обработчик исключений в свой код, чтобы поймать точную проблему
тогда если вы видите эту ошибку в другой системе просто скопируйте из локального файла и вставьте файл crystalreport.rpt в определенную папку, как вы объявили путь в своем коде.

Это сработало для меня. Надеюсь, что это может решить вашу проблему.


Рейтинг:
1

SRoy_5

У меня была та же проблема

error downloading the fileCrystalDecisions.Shared.CrystalReportsException: Load report failed. 


Мой ЭПР работал правильно в локальном режиме и сохранил pdf-файл для общего доступа, но после перемещения его в разработку он перестал работать и начал показывать ошибку.


Решение: добавьте обработчик исключений в свой код, чтобы поймать точную проблему
тогда если вы видите эту ошибку в другой системе просто скопируйте из локального файла и вставьте файл crystalreport.rpt в определенную папку, как вы объявили путь в своем коде.

Это сработало для меня. Надеюсь, что это может решить вашу проблему.


Рейтинг:
0

amit28august

U может иметь текущую форму каталога выполнения это

string directory = AppDomain.CurrentDomain.BaseDirectory;

затем вы должны соответствующим образом изменить путь загрузки, чтобы получить доступ к файлам ur .rpt также после публикации проекта вы также получили скомпилированный файл .rpt, используйте их также вместе с ur exe.


lilian87

Извини, что спрашиваю..
После установки , когда я выполнил
директория = домене приложения.CurrentDomain.BaseDirectory;
Проект существует в папке bin\release.
Как изменить путь отчета crystal соответственно?

amit28august

u используйте функции обработки строк String.Заменить("bin\\release\\","имя папки отчета здесь");

возьмите его из папки ur

lilian87

я хочу изменить путь crystal reports, используемый в моей форме.В этом проекте я использую 7 crystal reports.Итак, как я изменю путь ко всем отчетам crystal reports, чтобы получить к ним доступ с другого компьютера??

[no name]

Отредактировано: отформатировано с использованием тега "pre".