Переключение на Главную Страницу Страницы: [1] 2 3  ОтправитьПечать
Очень популярная тема (более 25 ответов) Управление принтером (число прочтений - 13424 )
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Управление принтером
04. Августа 2011 :: 05:27
Печать  
Есть ли решение следующей задаче:
На принтер посылается пакет документов, некоторым из них нужно указать двухстороннюю печать, остальным одностороннюю. Т.е. есть ли расширенный аналог 1С Опции таблицы, но с возможностью задания двухсторонней печати.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Управление принтером
Ответ #1 - 04. Августа 2011 :: 05:55
Печать  
есть.
Либо создать в системе 2 принтёра на 1 устройство, одному включить всегда дуплекс и печатать на эти принтёры,
либо, скармливать dat файлик с настройками печати принтёру перед печатью.
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Управление принтером
Ответ #2 - 04. Августа 2011 :: 06:36
Печать  
Дело в том, что разделить пакет нельзя. Т.е. печать нужно посылать строго на один принтер. А подробно можно про dat файл?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Управление принтером
Ответ #3 - 04. Августа 2011 :: 07:11
Печать  
через rundll32 printui.dll считываешь настройки принтёра в файл , имеешь 2 dat файла - с дуплексом и без..
затем

ИмяПринтера="\\Вася\HP LaserJet 4350 Series PCL 5";
ФайлДуплекс=КаталогПользователя()+"Duplex.dat";
ФайлНеДуплекс=КаталогПользователя()+"NoDuplex.dat";
КомандаСистемы("rundll32 printui.dll,PrintUIEntry /Ss /n"""+ИмяПринтера+""" /a """+ФайлДуплекс+"""");
//далее печатаем с дуплексом

КомандаСистемы("rundll32 printui.dll,PrintUIEntry /Ss /n"""+ИмяПринтера+""" /a """+ФайлНеДуплекс+"""");
//далее печать без дуплекса...

Настройки принтёра помеешь так:
rundll32 printui.dll,PrintUIEntry /Ss /n "\\Вася\HP LaserJet 4350 Series PCL " /a "Duplex.dat"
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Управление принтером
Ответ #4 - 04. Августа 2011 :: 07:13
Печать  
RuporAbsurda писал(а) 04. Августа 2011 :: 06:36:
Дело в том, что разделить пакет нельзя. Т.е. печать нужно посылать строго на один принтер. А подробно можно про dat файл?


Что значит нельзя ?
Да и какая разница, ну первые таблички ты отправишь на принтер
Вася с дуплексом, а остальные таблички на принтёр ВасяБезДуплекса, в котором дуплекс выключен.

А принтера в системе Вася и ВасяБезДуплекса - это один и тот-же физический принтер, т.е это одно устройство.

  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Управление принтером
Ответ #5 - 04. Августа 2011 :: 07:24
Печать  
Я просто не понял, подумал, что предлагается разделить на два отдельных принтера.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Управление принтером
Ответ #6 - 04. Августа 2011 :: 07:30
Печать  
я вот только не помню про ключи rundll32 printui.dll


есть /Ss и /Sr, одна из них пишет, другая восстанавливает из файлика с настройками..
лень проверять
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Управление принтером
Ответ #7 - 04. Августа 2011 :: 08:10
Печать  
Посмотрел на technet, написано:Rundll32 printui.dll,PrintUIEntry
Назначение: Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows Vista
А как же XP?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Управление принтером
Ответ #8 - 04. Августа 2011 :: 08:14
Печать  
RuporAbsurda писал(а) 04. Августа 2011 :: 08:10:
Посмотрел на technet, написано:Rundll32 printui.dll,PrintUIEntry
Назначение: Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows Vista
А как же XP?


ты не поверишь, работает.
Улыбка
Более того, эта команда появилась задолго до вышеперечисленных ОС
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Управление принтером
Ответ #9 - 04. Августа 2011 :: 09:01
Печать  
Ну, тады ой! Будем экспериментировать.  Очень довольный Спасибо.
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Управление принтером
Ответ #10 - 04. Августа 2011 :: 09:26
Печать  
Непонятный трабл с явным указание принтера. Хотел сделать, чтобы сразу печаталось на принтер HP LaserJet 4200 PCL 6, нажимаю на печать и тишина.

o_Tabl.PageSetup(1,100,1,5,5,5,5,0,5,0,1,"\\Serv1\HP LaserJet 4200 PCL 6");
o_Tabl.Print(0);

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

  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Управление принтером
Ответ #11 - 04. Августа 2011 :: 10:07
Печать  

Перед этим задай уникальные опции печати.

http://www.mista.ru/articles1c/hare/article.53.html
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Управление принтером
Ответ #12 - 04. Августа 2011 :: 11:13
Печать  
Этот способ не помог. Все равно не печатает.
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Управление принтером
Ответ #13 - 04. Августа 2011 :: 11:22
Печать  
А кстати, можно ли отменить вывод DOS окна при запуске КомандаСистемы?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Управление принтером
Ответ #14 - 04. Августа 2011 :: 11:23
Печать  
задай короткое имя принтёру.
Проверь, есть ли к нему доступ.
Прибей ветку о мокселе в реестре.

  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 
ОтправитьПечать