Имя: Пароль:
1C
1C 7.7
v7: Принтер этикеток - выбрасываю (может кому понадобится)
0 Злопчинский
 
02.10.11
00:24
Казалось бы простая задача:
-
получить список доступных принтеров, исключая принтера этикеток.
как это сделать с учетом того, что имя принтера в общем случае - произвольное...?
1 DGorgoN
 
02.10.11
00:27
У него есть какой то признак, которого нет у други принтеров?

P.S. По модели может быть?
2 Злопчинский
 
02.10.11
00:30
насчет признака - не знаю.. есть подозрение что Абрахамс стопудово может этот признак вытянуть если он есть - значит этикетки, если нет - значит обычный принтер...
.
по модели - это грабли с другой стороны те же самые - ты все модели принтеров этикеток знаешь...?
.
расширим задачу:
- исключить факсы, принтерывкартинку; принтерыпдф, принтерывемайл - оставить принтеры которые могут печатать на реальный физический носитель - а именно на бумагу.. ну пусть будет А4
3 Злопчинский
 
02.10.11
00:30
.. но только в том случае, если А; - не этикетка в этикеточном принтере!!!
4 DGorgoN
 
02.10.11
00:43
(3) Откуда компьютер должен узнать - обычный это принтер или нет?
5 Злопчинский
 
02.10.11
00:45
(4) ..хороший вопрос задал Буратино папе Крло...
6 DGorgoN
 
02.10.11
00:46
Самое тупое в имени принтера как нить отображать какого он типа, тогда по wsh через enumprintercollections (вроде как точно не помню) можно получить список всех принтеров и соотвественно узнать ху из ху..
7 Злопчинский
 
02.10.11
00:46
скорее всего, в принтерах этикеток есть какие-то специфические настрйоки/параметры драйвера, которых нет у других принтеров... типа расстояние между этикетками... или отрезать при конце печати...
.
???
8 DGorgoN
 
02.10.11
00:47
(7) не работал не в курсе. с твоими входными данными (6) думаю выход..
9 Злопчинский
 
02.10.11
00:47
(6) какой умный - я так и сам умею...
10 Злопчинский
 
02.10.11
00:47
(8) но это же НЕКУЗЯВО!!!!
11 DGorgoN
 
02.10.11
00:48
(10) кузяво не кузяво, няшно не няшно - зато работает =)
12 Злопчинский
 
02.10.11
00:49
не.. понятно что бардак автоматизировать нельзя.. но .. ВДРУГ???
13 DGorgoN
 
02.10.11
00:49
+(11) и без существенного гемора. В принцепе у нас сетевые принтеры уже так и обозначаются - когда глядишь в список из более 100 уже голова начинает кружится. у нас так заведено:

Отдел.Марка.Модель.Номер
14 DGorgoN
 
02.10.11
00:50
В данном случае у тебя моно так же указать или в пояснении к принтеру (я с пояснением не работал - узнать где там его через всш хз)
15 DGorgoN
 
02.10.11
00:52
(12) ну а как ты его реальный отличишь от вертуального или факса или хз - у меня вон факс стоит, вполне себе сетевой принтер: все есть, все параметры =)
С виртуальными та же засада..

P.S. ИИ надо написать - сразу все проблемы решишь =)
16 Злопчинский
 
02.10.11
00:52
вот например в HPLJ6L есть вкладочка "Параметры устройства", где есть типа "входной лоток для бумаг" и там есть значение А4
.
а вот Zan Image Printer (BW) - там такого нет
17 DGorgoN
 
02.10.11
00:57
(16) у меня на факсе такая закладка есть прикинь =)
18 DGorgoN
 
02.10.11
00:58
Лана я спать, оставляю тр..ь мозг дальше уже в одиночестве.
Приводи систему в порядок - именуй принтеры нормально..
19 Злопчинский
 
02.10.11
00:59
(18) принтера ШК у меня поименованы нормально!
но вот принципиальный вопрос остался!
20 Torquader
 
02.10.11
01:06
Для драйвера принтера Windows не важно, на чём умеет печатать принтер и умеет ли вообще. Стандартная печать идёт через Context HDC, который позволяет выполнять некоторые команды вывода - список этих команд на уровне системы можно получить.
Но беда в том, что, например, принтер штрих-кодов, который печатает на термобумаге, прекрасно выводит листы А4 (только часть отрезается).
Другими словами, вы можете узнать модель принтера, вы можете узнать куда он подключен, а также тип носителей, на которых он печатает (то есть размеры листов), а вот что это за принтер - вы не узнаете, кроме как спросив у производителя.
21 kotletka
 
02.10.11
01:26
у принта этикеток программно определяется калибровка
22 Скептик
 
02.10.11
08:20
Однозначный реквизит настроек: "термопечать/термотрансфёр".
Вот только в API он может обзываться, в общем случае, как угодно.
23 wertyu
 
02.10.11
08:32
по идее у принтеров этикеток более другие языки, например у семейства Зебр ) это epl и zpl
24 Neg
 
02.10.11
10:17
(0) Так ты выбрасываешь принтер или нет? Наложным не перешлёшь?
25 0xFFFFFF
 
02.10.11
10:19
А справочник принтеров завести не вариант? У мну так работает.
26 0xFFFFFF
 
02.10.11
10:20
Ну и в пользовательском режиме - список для создания нового элемента в 1С.
Найти имена принтеров
27 Злопчинский
 
02.10.11
14:31
(25) это - обход проблемы, который требует постоянного поддержания справочника в актуалшьном состоянии..
28 Torquader
 
02.10.11
21:55
Что умеет принтер этикеток, который собираются выбрасывать ?
29 Злопчинский
 
03.10.11
10:41
(28) он не умеет печатать на листы А4 (отправляемые на него) ;-) поэтому этот принтер надо выбросить из списка принетров, доступных для печати А4
30 Stim213
 
03.10.11
10:44
как ловко оформлен заголовок =) он явно рассчитан на жадных и тупых одинесников))