|
компонента com , управляемое приложение тонкий клиент | ☑ | ||
---|---|---|---|---|
0
erutan
14.06.18
✎
22:44
|
Здравствуйте, уважаемые коллеги!
В ходе перехода на ЗУП 3 - не могу понять, как переделать одну внешнюю обработку (по работе со считывателем карт СКУД). В толстом клиенте - работает. Но как переделать под тонкий? dll на пк и зарегистрирована, считыватель подключен к локальному пк , база на сервере sql ------------- &НаКлиенте перем kodos_rd Экспорт; &НаКлиенте Процедура ПриОткрытии(Отказ) //ПутьКВнешнейКомпоненте = "C:\1\Новая папка\BIN\kodos_rd.dll"; ПутьКВнешнейКомпоненте = "kodos_rd.dll"; //"C:\ДрайверАТОЛТСДMobileLogistics.zip"; #Если ТолстыйКлиентУправляемоеПриложение Тогда ЗагрузитьВнешнююКомпоненту (ПутьКВнешнейКомпоненте); #КонецЕсли УстановитьВнешнююКомпоненту(ПутьКВнешнейКомпоненте); //Сообщить("Внешняя компонента загружена"); //УстановитьВнешнююКомпоненту(ПутьКВнешнейКомпоненте); Рез = ПодключитьВнешнююКомпоненту(ПутьКВнешнейКомпоненте, "kodos_rd", ТипВнешнейКомпоненты.Com); Если НЕ Рез Тогда Сообщить("не подключено"); Возврат; КонецЕсли; kodos_rd = Новый("AddIn.kodos_rd"); имяпорта = "COM6"; Попытка //Открываем последовательный порт kodos_rd.ОткрытьПорт(ИмяПорта); Исключение //При исключении получаем текст ошибки Предупреждение("Ошибка при открытии порта "+ИмяПорта); Сообщить(kodos_rd.Ошибка, СтатусСообщения.Внимание); КонецПопытки; КонецПроцедуры |
|||
1
tesseract
15.06.18
✎
00:23
|
Порядок вызова функций нарушен. Функция "ЗагрузитьВнешнююКомпоненту" никогда не будет выполняться из-за директивы компилятора. "УстановитьВнешнююкомоненту" тут не нужен.
|
|||
2
erutan
15.06.18
✎
14:16
|
Спасибо, перепроверил порядок и въехал
&НаКлиенте перем kodos_rd Экспорт; &НаКлиенте Процедура ПриОткрытии(Отказ) ПутьКВнешнейКомпоненте = "kodos_rd.dll"; //#Если ТолстыйКлиентУправляемоеПриложение Тогда //ЗагрузитьВнешнююКомпоненту (ПутьКВнешнейКомпоненте); //#КонецЕсли //УстановитьВнешнююКомпоненту(ПутьКВнешнейКомпоненте); //НачатьУстановкуВнешнейКомпоненты(,ПутьКВнешнейКомпоненте); //Рез = ПодключитьВнешнююКомпоненту(ПутьКВнешнейКомпоненте, "kodos_rd", ТипВнешнейКомпоненты.Com); ProgID = ("AddIn.kodos_rd"); ПодключитьВнешнююКомпоненту(ProgID); //Если НЕ Рез Тогда // Сообщить("не подключено"); // Возврат; //КонецЕсли; //kodos_rd = Новый("AddIn.kodos_rd"); kodos_rd = новый(ProgID); имяпорта = "COM6"; Попытка //Открываем последовательный порт kodos_rd.ОткрытьПорт(ИмяПорта); Исключение //При исключении получаем текст ошибки Предупреждение("Ошибка при открытии порта "+ИмяПорта); Сообщить(kodos_rd.Ошибка, СтатусСообщения.Внимание); КонецПопытки; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |