Ошибка Crystal Reports PrintToPrinter после публикации проекта в IIS - PullRequest
0 голосов
/ 05 апреля 2019

Я использую Crystal Reports для печати PDF-файла в моем веб-проекте ASP.Функция печати корректна, когда я отлаживаю и выпускаю проект в VS, но при установке проекта на IIS на моем компьютере возникает ошибка.

Я пытался подавить помехи от базы данных.Я просто использую пустой отчет с текстом без данных.Я также пытался использовать тот же отчет и тот же код в настольном приложении C #.Функция печати правильная.

В моем проекте есть код:

private void OutExportExcel_WJKP()
{
        // load
        string reportPath = "D:\\fileCode\\VSworkspace\\LJZY\\LJZY.WEB\\Reports\\CrystalReport11.rpt";
        CrystalDecisions.CrystalReports.Engine.ReportDocument rptDoc =
                    new CrystalDecisions.CrystalReports.Engine.ReportDocument();
        rptDoc.Load(reportPath);

        // print
        rptDoc.PrintToPrinter(1, false, 0, 0);
 }

Ожидаемый результат: всплывающее окно для подтверждения печати отчета в формате PDF.

Фактический результат: Информация об ошибке и фрагмент кода показаны ниже:

Аннотация: Информация об ошибке переведена мной.Потому что я не знаю, как изменить язык информации об ошибках.Исходная информация об ошибке приведена на рисунке ниже.
введите описание изображения здесь

"/" Ошибка сервера в приложении.
Указанная программа не найдена.
Примечание: необработанное исключение произошло во время выполнения текущего веб-запроса. Проверьте информацию трассировки стека для получения подробных сведений об ошибке и о том, где в коде возникла ошибка.
Сведения об исключении: System.ComponentModel.Win32Exception:Не удалось найти указанную программу.
Ошибка источника:
Строка 134:
Строка 135: // print
Строка 136: rptDoc.PrintToPrinter (1, false, 0, 0);
Строка 137:}
Строка 138:
Исходный файл: D: \ fileCode \ VSworkspace \ LJZY \ LJZY.WEB \ Page \ DownLoad \ DownLoad.aspx.cs Строка: 136
Трассировка стека:
[Win32Exception (0x80004005): указанная программа не найдена.]
System.Drawing.Printing.StandardPrintController.OnStartPrint (документ PrintDocument, PrintEventArgs e) + 242489
System.Drawing.Printing.PrintController.Print (документ PrintDocument) + 208
System.Drawing.Printing.PrintDocument.Print () + 111
CrystalDecisions.CrystalReports.Engine.FormatEngine.PrintToPrinter (Int32 intCNage, начальный тип32Nage, булевский колонтитул) + 469
CrystalDecisions.CrystalReports.Engine.ReportDocument.PrintToPrinter (Int32 nCopies, логическое сопоставление, Int32 startPageN, Int32 endPageN) + 73
LJZY.WEB.Page.DownLoad.DownLocel.WJ (в.fileCode \ VSworkspace \ LJZY \ LJZY.WEB \ Page \ DownLoad \ DownLoad.aspx.cs: 136
LJZY.WEB.Page.DownLoad.DownLoad.btn_down_Click (Отправитель объекта, EventArgs e) в D: \ fileCode \ VSworkLJZY \ LJZY.WEB \ Page \ DownLoad \ DownLoad.aspx.cs: 54
LJZY.WEB.Page.DownLoad.DownLoad.Page_Load (Отправитель объекта, EventArgs e) в D: \ fileCode \ VSworkspace \ LJZY \ LJZ.WEB \ Page \ DownLoad \ DownLoad.aspx.cs: 43
System.Web.Util.CalliEventHandlerDelegateProxy.Callback (отправитель объекта, EventArgs e) + 51
System.Web.UI.Control.OnLoad (EventArgs e)+ 95
Системm.Web.UI.Control.LoadRecursive () + 59
System.Web.UI.Page.ProcessRequestMain (логическое значение includeStagesBeforeAsyncPoint, логическое includeStagesAfterAsyncPoint) + 678
Информация о версии: версия Microsoft .NET Framework: 4.0.30319;ASP.NET версия: 4.7.3282.0

...