Страница 1 из 2

Печать на принтере

Добавлено: 01 авг 2008, 07:49
Leshiy
Хочу после рендеринга отчёта распечатать его на принтере без вывода диалога выбора принтера:

PrinterSettings currPrinterSettings = new PrinterSettings();
currPrinterSettings.PrinterName = "\\\\USERS15\\hp LaserJet 1320 PCL 6";
stiReportReestr.Print(false, currPrinterSettings);


currPrinterSettings - {[PrinterSettings \\USERS15\hp LaserJet 1320 PCL 6 Copies=1 Collate=True Duplex=Simplex FromPage=0 LandscapeAngle=90 MaximumCopies=9999 OutputPort= ToPage=0]}

Ругается - " Значение не может быть неопределенным. "

Чего ему не хватает?

Спасибо за ответ.

Печать на принтере

Добавлено: 01 авг 2008, 16:16
Edward
Здравствуйте.

Привидите, пожалуйста, полный стек ошибки. Какую модель принтера Вы используете?

Спасибо.


Печать на принтере

Добавлено: 04 авг 2008, 06:18
Leshiy
А стека ошибки не видно.

Нажимаю кнопку печати в своём приложении, выскакивает окошко " Значение не может быть неопределенным. " и кнопка ОК. Нажимаю ОК - принтер печатает.

Принтер hp LaserJet 1320

Печать на принтере

Добавлено: 04 авг 2008, 07:47
Ivan
Здравствуйте.
Leshiy писал(а):currPrinterSettings - {[PrinterSettings \\USERS15\hp LaserJet 1320 PCL 6 Copies=1 Collate=True Duplex=Simplex FromPage=0 LandscapeAngle=90 MaximumCopies=9999 OutputPort= ToPage=0]}
Чего ему не хватает?
Может быть имя принтера должно быть без пробелов, или взято в дополнительные кавычки?

Спасибо.

Печать на принтере

Добавлено: 04 авг 2008, 10:18
Leshiy
Имя принтера без пробела сделать невозможно, это сетевой принтер и поменять имя нет возможности.

На принтер печатает - но только после того, как нажать ОК на предупреждении "Значение не может быть неопределенным."

При дополнительных кавычках (одинарных или двойных) - ругается, что неправильное имя принтера.


Ещё один разработчик, который использует печать на принтер, получает сообщение "Value cannot be null."

Печать на принтере

Добавлено: 05 авг 2008, 13:37
Vital
Здравствуйте,

Если используется следующий код ( и этот принтер установлен как принтер по умолчанию):

Код: Выделить всё

stiReportReestr.Print(false);
или

Код: Выделить всё

PrinterSettings currPrinterSettings = new PrinterSettings();
stiReportReestr.Print(false, currPrinterSettings);
работает верно?


Спасибо.

Печать на принтере

Добавлено: 05 авг 2008, 13:48
Leshiy

Код: Выделить всё

stiReportReestr.Print(false);
- печатает на принтер по умолчанию без ошибок.

Код: Выделить всё

PrinterSettings currPrinterSettings = new PrinterSettings();
currPrinterSettings.PrinterName = "\\\\USERS15\\hp LaserJet 1320 PCL 6";
stiReportReestr.Print(false, currPrinterSettings);
- после нажатия на кнопку печати вылетает окошко с текстом "Значение не может быть неопределенным.", нажимаю ОК - печатает на currPrinterSettings. Т.е., если бы не это вылетающее сообщение - то было бы всё отлично.

Печать на принтере

Добавлено: 05 авг 2008, 15:24
Vital
Здравствуйте,

Была похожая ошибка. Уточните пожалуйста точную версию генератора отчетов.

Спасибо.

Печать на принтере

Добавлено: 06 авг 2008, 06:04
Leshiy
Stimulsoft Reports.Net

Version: 2008.1.200 from 9 March 2008

.Net Framework v2.0.50727

Печать на принтере

Добавлено: 06 авг 2008, 08:36
Vital
Здравствуйте,

Эта ошибка была исправлена в билде от 13 марта. Это первый билд после релиза.

Спасибо.