![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 04.09.2009
Сообщений: 2
|
![]()
Приветствую форумчан.
Пишу не в первый форум. Подскажите. Отправляю на печать вордовый документ с помощью команды PrintOut компонента WordApplication. Для выбора принтера и параметра печати использую PrintDialog. Проблема в том, что не могу вытащить параметр 2-сторонней печати. Параметры, поля которых размещены на самом PrintDialog-е, взять получается (номера страниц, кол-во копий). Но признак 2-сторнней печати, который задаётся после выбора нужного принтера и нажатия кнопки "Свойства", вытащить не удалось. Смотрел в свойствах класса TPrinter и в TPrinterSetupDialog. Там есть некоторые параметры (ориентация бумаги, например), но 2-сторнней печати там не видать. Как бы её достать, чтобы потом задать при вызове функции PrintOut? Уточняю: с PrintOut-ом у меня вопросов нет. Вопрос, как понять, что юзер выбрал двустороннюю печать перед её запуском. Заранее спасибо. |
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 04.09.2009
Сообщений: 2
|
![]()
Так и не подсказали мне по моему вопросу.
Я нашёл следующий вариант решения проблемы: создал собственную форму, накидал туда поля, получилось окно для печати. Но тут возникла сложность: если устанавливаешь галочку "Двусторонняя печать", то она должна быть не активной, если принтер таковую не поддерживает. Я нашёл API-функцию DeviceCapabilities(Device, Port, DC_DUPLEX, nil, nil), возвращающую 1, если принтер двустороннюю печать поддерживает, и 0 - если нет. У нас в на работе есть 4 принтера: 1 - имеет собственный IP, поддерживает автоматическую 2-стороннюю печать. 2 - подключён напрямую к моему компу, поддерживает ручную 2-стороннюю печать. 3 - подключён к другому компу, поддерживает ручную 2-стороннюю печать. 4 - подключён к другому компу, поддерживает ручную 2-стороннюю печать. Функция по первым 2-м принтерам возвращает 1. По 3-му и 4-му же принтеру - 0. Как сделать так, чтобы поддержка 2-сторонней печати принтера, подключённого к чужому компу, тоже была видна? Ведь принтеры часто подключены к чужим компам, а моя программа не будет отображать их 2-стороннюю печать. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как правильно работать с методом PrintOut? | Stilet | Microsoft Office Word | 6 | 09.07.2009 09:11 |
не копирует фаил командой copyfile | Dozent | Общие вопросы Delphi | 3 | 21.06.2009 00:25 |
Как вызвать командную строку с командой из Edit?? | dolphin705 | Общие вопросы Delphi | 2 | 20.06.2009 00:33 |
Определение завершения сторонней программы | Хамяг | Общие вопросы Delphi | 3 | 26.11.2008 18:12 |
Как определить момент запуска сторонней программы? | NioTo | Win Api | 2 | 17.12.2007 16:40 |