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

Вниз

Принтер   Найти похожие ветки 

 
Roadstar   (2004-08-27 11:45) [0]

Доброго времени суток!
Возникла такая проблема: как произвести диагностику принтера, т.е. если он вообще, есть ли в нем бумага, готов и исправен и т.д.
Где можно получить такую информацию?
Заранее благодарен.


 
Rem   (2004-08-27 11:50) [1]

Вообще-то такую информацию инкапсулирует ОС. В общем случае пусть этим ОС и занимается. Но если уж так нужно, см. "Printing and Print Spooler Functions" и "Printing and Print Spooler Structures". Это из WinAPI.


 
Анатолий   (2004-08-27 12:51) [2]

Вообще-то Rem прав про то, что такую информацию инкапсулирует ОС.

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

http://junglewin.narod.ru/lpt.html


 
Roadstar   (2004-08-27 13:55) [3]


> Анатолий  

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


 
Анатолий   (2004-08-27 14:18) [4]


> Roadstar  

А, ну если это подошло, обратите внимание, чтобы "LPT" был не именованым каналом спулера печати, а символьной ссылкой на драйвер, о котором в статье идет речь. А то в В2000 так может быть. Лучше создайте свою симв. ссылку при помощи
DefineDosDevice(DDD_RAW_TARGET_PATH, SymbLink, DeviceName)


 
Roadstar   (2004-08-27 14:53) [5]


> Анатолий

Кстати, хотел использовать функцию GetPrinter, однако она у меня не хочет работать!
Вот код:

...
var
pi : PPrinterInfo2;
cnt : integer;
begin
if Printer.Printers.Count > 0 then
 begin
  GetMem(pi, sizeof(_PRINTER_INFO_2));
  ZeroMemory(pi, sizeof(_PRINTER_INFO_2));
  cnt := 255;
  if not GetPrinter(Printer.Handle, 2, pi, sizeof(_PRINTER_INFO_2), @cnt) then
...

Так вот эта функция при таком раскладе всегда FAIL!
Че я не так сделал?


 
Rem   (2004-08-27 15:06) [6]

Printer.Handle = NULL?


 
Roadstar   (2004-08-27 15:16) [7]


> Rem  


неа, какое-то число


 
Анатолий   (2004-08-27 15:29) [8]

Что говорит GetLastError ?


 
Rem   (2004-08-27 15:31) [9]

cnt := sizeof(_PRINTER_INFO_2);



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

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

Наверх




Память: 0.48 MB
Время: 0.049 c
14-1092479913
YurikGL
2004-08-14 14:38
2004.09.12
Пользователи Active Directory


14-1093287449
GEN++
2004-08-23 22:57
2004.09.12
Математические выражения в тексте.


14-1092645916
КаПиБаРа
2004-08-16 12:45
2004.09.12
Лоббирование и программирование


14-1093355614
Агент Смитт
2004-08-24 17:53
2004.09.12
Провайдеры в Донецке


4-1090580136
Skier
2004-07-23 14:55
2004.09.12
CreateProcess, INFINITE и проблема с прорисовкой окон