Печать из приложения в IIS на сетевой принтер на сервере - PullRequest
2 голосов
/ 09 декабря 2010

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

sReportPath = objCrystalUtils.ExportReportToPDF("Report Name", iReportInfoID)

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

Когда я запускаю точно такой же фрагмент кода в .ashx из вызова ajax.Отчеты генерируются (я вижу, что файлы pdf создаются на диске), но печать не происходит.

 oRpt.PrintToPrinter(objReport.DefaultAutoPrint, True, 0, 0)

В обоих случаях один и тот же код используется для печати отчета.(objReport.DefaultAutoPrint = 0 в обоих случаях)

Моя единственная мысль заключается в том, что местоположение кода, вызывающего этот метод, находится в другом месте относительно местоположения самих счетов.

Принтер, на котором я пытаюсь распечатать, является сетевым принтером, установленным на моей машине, и я использую Windows 7 IIS 6.1

Есть мысли?

Редактировать:

Вот мысль ... если я запускаю один как модульный тест локально, а другой запускаю через веб-приложение, работающее через IIS, есть ли разница в идентификаторе пользователя и доступе пользователя к принтеру по умолчанию?

Редактировать:

Поэтому я добавил своих локальных пользователей ASP, IUSR и SYSTEM в систему безопасности принтера и разрешил им печатать ... без кубиков.Итак, я проверил КАЖДОГО пользователя, и он настроен на доступ, и НИКАКИМ пользователям не отказано ... поэтому я думаю, что это своего рода аргументация убивает.

Редактировать:

Я изменил имяэтот пост, так как я больше не думаю, что проблема связана с ajax, поскольку, если я попытаюсь сделать тот же процесс в коде за постом назад, вместо того, чтобы запускать его из вызова ajax, я все равно получу ту же проблему.

1 Ответ

1 голос
/ 15 декабря 2010

Патрик, для меня это известная проблема Crystal Reports, распечатывающая определенный отчет из запущенного приложения через IIS.

У меня была та же проблема и раньше, и после нашего поиска этой проблемы мы получили следующее;

Report to be generated, exported, and then to be downloaded to client machine,  
so user can print it locally (say, report will be exported as PDf file, 
user can use print option of PDF reader).
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...