Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.21;
Скачать: CL | DM;

Вниз

Проблемы с печатью! Информации нет, помогите!   Найти похожие ветки 

 
Шоломицкий С. А.   (2006-11-25 13:50) [0]

Имеется принтер HP 9050.
В нём есть из того что мне нужно: нижний лоток, верхний лоток, лоток ручной подачи.
Мне очень надо уметь печатать с любого из этих трёх лотков.
Облазил весь интернет, нашёл единственный пример, который у меня никак не работат. Вот он:

var
 ADevice, ADriver, APort: array[0..255] of char;
 ADeviceMode: THandle;
 DevMode: PDevMode;
begin
 with Printer do
 begin
   GetPrinter(ADevice, ADriver, APort, ADeviceMode);
   SetPrinter(ADevice, ADriver, APort, 0);
   GetPrinter(ADevice, ADriver, APort, ADeviceMode);
   DevMode := GlobalLock(ADeviceMode);
   if not Assigned(DevMode) then
     ShowMessage("Не могу установить принтер")
   else
   begin
     with DevMode^ do
     begin
       dmDefaultSource := DMBIN_UPPER;
     end;
     GlobalUnlock(ADeviceMode);
     SetPrinter(ADevice, ADriver, APort, ADeviceMode);
   end;
 end;
 Printer.BeginDoc;
 Printer.Canvas.TextOut(50, 50, "Печать из верхнего лотка");
 with DevMode^ do
 begin
   dmDefaultSource := DMBIN_LOWER;
 end;
 Printer.NewPageDC(DevMode);
 Printer.Canvas.TextOut(50, 50, "Печать из нижнего лотка");
 Printer.EndDoc;


Заместо dmDefaultSource := DMBIN_LOWER; и dmDefaultSource := DMBIN_UPPER; можно подставлять цифры (как бы номер лотка).
Ставил самые разные, от 1 до 10..во всех случаях оба листа берутся из нижнего лотка!

Кстати, в коде есть вот это

procedure TPrinter.NewPageDC(DM: PDevMode);
begin
 CheckPrinting(True);
 EndPage(DC);
 if Assigned(DM) then
   ResetDC(DC, DM^);
 StartPage(DC);
 Inc(FPageNumber);
 Canvas.Refresh;
end;

Нашёл, что это нужно для изменеиня любых установок во время печати.

Короче, ничего не получается...
А надо очень...
Пожалуйста, помогите!!!!


 
Leonid Troyanovsky ©   (2006-11-25 14:05) [1]


> Шоломицкий С. А.   (25.11.06 13:50)  

> Облазил весь интернет, нашёл единственный пример,


http://groups.google.com/group/borland.public.delphi.nativeapi.win32/msg/78ab555fb875269c

--
Regards, LVT.


 
Шоломицкий С. А.   (2006-11-25 14:11) [2]

спасибо..жалко я не на работе и не могу это проверить..
хотя данный вами код особо не отличается от того, что я написал..
он вообще, в принципе, такой же(


 
Leonid Troyanovsky ©   (2006-11-25 14:19) [3]


> Шоломицкий С. А.   (25.11.06 14:11) [2]

> хотя данный вами код особо не отличается от того, что я
> написал..
> он вообще, в принципе, такой же(


Этот код, вообще-то, дал Peter Below.
Ну, а отличия, все же, заметны. Например:

dmFields := dmFields or DM_DEFAULTSOURCE;

Кста, Printer это из Printers.pas.

--
Regards, LVT.


 
Шоломицкий С. А.   (2006-11-25 15:10) [4]

Спасибо большое. Надеюсь сработает...
а во тесли нет...то можно вешаться прям((


 
Leonid Troyanovsky ©   (2006-11-25 15:13) [5]


> Шоломицкий С. А.   (25.11.06 15:10) [4]

> а во тесли нет...то можно вешаться прям((


Перед повешанием, все же, желательно
информировать общественность о срабатывании.
Для пользы будущих поколений, так сказать.

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2006-11-25 15:17) [6]

> Leonid Troyanovsky  (25.11.2006 15:13:05)  [5]

Это можно сказать только после повешания.


 
Leonid Troyanovsky ©   (2006-11-25 15:29) [7]


> Anatoly Podgoretsky ©   (25.11.06 15:17) [6]

> Это можно сказать только после повешания.


Анатолий, нас могут заподозрить в заинтересованности.

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2006-11-25 15:33) [8]

> Leonid Troyanovsky  (25.11.2006 15:29:07)  [7]

Не нас, а вас


 
Leonid Troyanovsky ©   (2006-11-25 15:45) [9]


> Anatoly Podgoretsky ©   (25.11.06 15:33) [8]

> Не нас, а вас


Я уже на полдороги в Баден-Баден.

--
Regards, LVT.


 
Шоломицкий С. А.   (2006-11-26 00:17) [10]

Обязательно сообщу, что да как, но только в понедельник(


 
Андрей Сенченко ©   (2006-11-26 13:10) [11]

Общественность заинтересована в принципе только двумя вещами из обширного списка "Что да как"
1. DM_DEFAULTSOURCE
2. Собственно как там там повешенье

... отсутствие ответа на 2й вопрос будет воспринято с пониманием.



Страницы: 1 вся ветка

Текущий архив: 2007.01.21;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.074 c
4-1157543469
DroNIX
2006-09-06 15:51
2007.01.21
Проблема эмуляция VK клавиш с программой GogleEarth


15-1167164837
kroner
2006-12-26 23:27
2007.01.21
Регулярные выражения в delphi


2-1167426717
Adios
2006-12-30 00:11
2007.01.21
Не компилируются проекты!!!


15-1167602046
Игорь Шевченко
2007-01-01 00:54
2007.01.21
А с новым годом всех!


2-1167135480
kuku
2006-12-26 15:18
2007.01.21
компонент для текста