|
Вопрос по подключению сканера штрих-кодов | ☑ | ||
---|---|---|---|---|
0
IVT_2009
23.07.20
✎
10:37
|
Существует ли простой способ подключить сканер штрих кода не в режиме клавиатуры в управляемых формах с использованием компоненты сканера от 1с. Где можно пример посмотреть?
|
|||
1
IVT_2009
23.07.20
✎
10:38
|
Можно его через библиотеку подключаемого оборудования подключить , но мне только для него не хотелось бы ее тащить в свой проект
|
|||
2
unbred
23.07.20
✎
10:40
|
гугл первая ссылка
|
|||
3
IVT_2009
23.07.20
✎
10:43
|
(2) пробовал и не раз, потому задаю вопросы
|
|||
4
IVT_2009
23.07.20
✎
10:51
|
Пробую
Попытка // Загрузка внешней компоненты ЗагрузитьВнешнююКомпоненту("e:\Scanner.dll"); Попытка // Создание объекта //AddIn.Scanner //Сканер = Новый("AddIn.Scaner45"); Сканер = Новый("AddIn.Scaner"); Сканер.OldVersion = 1; Исключение Сообщить("Объект не найден!"); КонецПопытки; Исключение Сообщить("Внешняя компонента драйвера не найдена"); КонецПопытки; регистрирую компоненту в реестре. пишет Внешняя компонента драйвера не найдена |
|||
5
Василий Алибабаевич
23.07.20
✎
10:57
|
(4) AddIn.Scaner45 - оно COM. И ему не нужно ЗагрузитьВнешнююКомпоненту. Это для натив.
Его нужно харагистрировать на компьютере с помощью regsvr32 . И дальше пользовать Сканер = Новый COMОбъект("AddIn.Scaner"); |
|||
6
Василий Алибабаевич
23.07.20
✎
10:57
|
/*зарегистрировать
|
|||
7
IVT_2009
23.07.20
✎
11:14
|
Смотрю в отладчике Новый("AddIn.Scaner")
пишет {(1)}: Тип не определен (AddIn.Scaner) в реестре регистрировал. Сейчас типовой драйвер от 1с попробую |
|||
8
IVT_2009
23.07.20
✎
11:20
|
Установил стандартный драйвер от 1с , вижу тот же результат. Что я не правильно делаю ?
|
|||
9
IVT_2009
23.07.20
✎
12:46
|
||||
10
IVT_2009
23.07.20
✎
13:54
|
для драйвера 1с
&наКлиенте процедура вклСканер() ProgID = "AddIn.Scanner"; ПодключитьВнешнююКомпоненту(ProgID); ОбъектДрайвера = Новый (ProgID); порт = 11; // 0 - в том случае, если сканер подключается в разрезе клавиатуры, иначе необходимо указать номер используемого com-порта БитДанных = 8; // возможные значения от 1 до 8 (должно соответствовать настройкам сканера) Скорость = 9600; // возможные значения: 110, 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 56000, 57600, 115200, 128000, 256000 (должно соответствовать настройкам сканера) Суффикс = "13"; // должно соответствовать настройкам сканера попытка ОбъектДрайвера.Open(1); ОбъектДрайвера.ИмяСобытия = "BarCodeValue"; ОбъектДрайвера.ОчиститьВход(); ОбъектДрайвера.ОчиститьВыход(); ОбъектДрайвера.АвтоВыключение = 0; ОбъектДрайвера.ПосылкаДанных = 1; ОбъектДрайвера.УстройствоВключено = 1; ОбъектДрайвера.ЗапрещениеСобытий = 0; ОбъектДрайвера.Порт = порт; ОбъектДрайвера.СтопСимвол = 13; Попытка Результат = (ОбъектДрайвера.Занять(1) = 0); Исключение Результат = Ложь; КонецПопытки; Если Результат Тогда ОбъектДрайвера.УстройствоВключено = 1; ОбъектДрайвера.ПосылкаДанных = 1; ОбъектДрайвера.ОчиститьВход(); ОбъектДрайвера.ОчиститьВыход(); КонецЕсли; Исключение Сообщить("Ошибка подключения сканера!"); КонецПопытки; конецпроцедуры //вклСканер &НаКлиенте Процедура кнПодключить(Команда) вклСканер(); КонецПроцедуры &НаКлиенте Процедура ВнешнееСобытие(Источник, Событие, Данные) Если Событие="BarCodeValue" Тогда сообщить(Данные); КонецЕсли; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |