Имя: Пароль:
1C
 
Сканер штрих кода
0 antihacker
 
31.03.15
07:51
Всем привет. Только не ругайте.

Сканер ни как не переходит в режим эмулации COM.

Вот он работает как клавиатура. Соответственно перехватываю как нажатие клавиатуры. По другому можно как получить  отсканированные данные сканера ? Из буфера. Решение без COM.
1 Галахад
 
гуру
31.03.15
07:54
Вроде типовой драйвер от 1С умеет генерировать события от клавиатурного сканера.
2 antihacker
 
31.03.15
08:03
Так можно по подробнее
3 Галахад
 
гуру
31.03.15
08:13
Что именно?
4 Tatitutu
 
31.03.15
08:19
Сервис - Параметры - Драйвер устройства ввода - Поиск оборудования - Сканирует (оцениваем результат)
5 antihacker
 
31.03.15
08:21
Так ведь сейчас сканер работает как клавиатура. Можно как то сканер  отловить как сканер. Правдя для этого в разрыве клавиатуры. Но тогда сканер не будет генерировать вообще ничего. Но он передает в буфер например. Или вообще запутался.

Вообщем Код


        Попытка
      ЗагрузитьВнешнююКомпоненту("C:\Program Files (x86)\1C\1C Barcode scanner\8_0_8_4\1scanopos.dll");
           scaner = Новый("AddIn.Scanner");
        Исключение
           Сообщить("Ошибка подключения сканера!");
       КонецПопытки;

                Если scaner.Подсоединить("Сканер №") <> 0 Тогда
           Сообщить( "не удалось подсоединить устройство");
        КонецЕсли;
        
       scaner.БитДанных=8;
       scaner.Порт="COM1";
       scaner.Скорость=9600;
       scaner.СтопБит=1;
                   scaner.ПрефиксСтрока = "";
           scaner.СуффиксСтрока = "#13";

           scaner.Таймаут = "75";
      scaner.ИмяСобытия = "BarCodeValue";

              Если scaner.Занять(1) <> 0 Тогда  
           Сообщить("Сканер: не удалось получить монопольный доступ к устройству");
       КонецЕсли;

                scaner.УстройствоВключено = 1;
       Если scaner.Результат <> 0 Тогда
           Сообщить( "не удалось включить устройство");
       КонецЕсли;

        
Он не бдует работать потому что Сканер не идет через USB, а не СOM. Как можно при USB отловливать данные сканера ? Не как клавиатурные события.
6 antihacker
 
31.03.15
08:22
Tatitutu, гвоврю же нету эмуляцию COM порта
7 yavasya
 
31.03.15
08:23
+(1) у меня так работает
(5) возьми торговлю типовую и в любом документе проверь
8 yavasya
 
31.03.15
08:23
Сканер какой у тебя ?
9 antihacker
 
31.03.15
08:24
ZEBEX  Z-3060
10 antihacker
 
31.03.15
08:25
yavasya, это когда сканер работает не как клавиатура. И он генерирует внешнее событие.
11 yavasya
 
31.03.15
08:28
(10) у меня как клавиатура
12 yavasya
 
31.03.15
08:28
и длл смотри  у меня 14 длл , если младше не будет работать
13 yavasya
 
31.03.15
08:29
хонивел мне нравистя в настройках и по наличию документации больше всех
14 antihacker
 
31.03.15
08:29
Ну тогда он у тебя не генерирует, а эмулирует клавиатуру.

Он у тебя в текстовом поле выводит отсканированные штрихы ?
15 antihacker
 
31.03.15
08:30
Что за ДЛЛ
16 yavasya
 
31.03.15
08:31
(15) вот косяк

ЗагрузитьВнешнююКомпоненту("C:\Program Files (x86)\1C\1C Barcode scanner\8_0_8_4\1scanopos.dll");

8_0_8_4 у меня 8_0_8_14
17 yavasya
 
31.03.15
08:32
(14) что ты хочешь сделать ?
18 yavasya
 
31.03.15
08:32
короче грузишь длл и вызывает внешнее событие
19 antihacker
 
31.03.15
08:34
Так я же пишу, что бы это строка работаласканер должен быть в режиме эмуляции КОМ порта. И у виндоуз находит его как КОМ порт подключение. А у меня ЮСБ. У ЮСБ нет понятие порта
20 antihacker
 
31.03.15
08:41
yavasya, если не трудно покажи что значит грузить и взывать внещнее событие.

ДЛЛ поможет перехватывать отсканированные штрих коды ?
21 Arxangel06
 
31.03.15
08:44
(19) Все зависит от сканера. Некоторые сканеры позволяют себя перенастроить, некоторые - нет. Например CipherLab 1000 - не позволяет, у него режим работы задается аппаратно, так что визуально одинаковые сканеры работают в принципиально разных режимах. Так что ответ на твой вопрос смотри в мануале к конкретно твоему сканеру. Возможно утилитой сможешь перевести, возможно - специальным штрихкодом, а возможно и совсем не сможешь.
22 ProxyInspector
 
31.03.15
09:06
Если у тебя USB драйвер, а ты хочешь чтобы он работал как COM, тогда ставится эмулятор USB-COM.
Если у тебя сканер работает в разрыв кливиатуры, а ты хочешь, чтобы у тебя генерировалось событие, тогда ставится драйвер сканера штрих кода от Атол (либо покупаешь его, либо ставишь старый бесплатный) и все работает.
  Можно поставить драйвер от Рарус. Он тоже умеет преобразовывать нажатие клавиатуры в событие.
  По крайней мере для Атол драйвера достаточно чтобы клавиатурный сканер имел префикс CR (перевод каретки)