Leave a comment

Comments 9

Сейчас интересует создание внешних компонент lamer19 October 28 2010, 04:58:50 UTC
Сейчас интересует создание внешних компонент
Правда меня больше интересует под 7.7

Reply

Re: Сейчас интересует создание внешних компонент tempus1 October 28 2010, 06:55:00 UTC
Под 7.7 есть шаблон для создания ВК (кажется на ИТС был когда-то раздел "Методика создания ВК").
Но под 7.7 в основном писали все на делфи (и как правило не по шаблону :))

Reply

Re: Сейчас интересует создание внешних компонент speshuric October 28 2010, 11:28:35 UTC
Он и сейчас есть. Даже 2 - старый и новый.

Reply


tempus1 October 28 2010, 06:54:05 UTC
Написание ВК (статьи с ИТС) чем-то принципиально отличаются от 7.7 и 8.0?
Просто для клюшек писал много, а вот под 8.2 как-то не приходилось :)

Reply

speshuric October 28 2010, 11:25:24 UTC
Между 7.7, 8.0 и 8.1 отличия незначительные. Везде это СОМ-объекты с определённым интерфайсом, правда часть доступных функций в 8.0, 8.1 порезана. По сути из-за того, что 8.1 нормально поддерживает работу с COM (в том числе обработка событий), то внешние компоненты в 8.1 были уже почти не нужны.
8.2 принципиально отличается тем, что кроме COM есть еще свой API - "Native API". Если всё делать тщательно и аккуратно, то такая ВК запускается и во всех режимах работы (сервер предприятия под вин32/вин64/лин, толстый клиент, тонкий клиент, веб-клиент IE, веб-клиент Firefox) - в этом может быть смысл. Из-за этой долбаной кроссплатформенности из языков остался тока С++ (или писать свою обёртку к вызовам функций .NET/JRE из неуправляемого кода). Я сейчас хочу понять для себя, достаточна ли производительность ВК, чтобы на неё скидывать "легковесные" задачи, которые не реализованы платформой (пример - в посте). Если заработает, то можно приемнять ВК именно в этом контексте.

Reply

dragoncat_ru November 28 2012, 07:02:02 UTC
Здравствуйте. Наткнулся на странность: две сэмпловые компоненты, одна - на vb, другая - на C#. Первая отлично работает в 7.7, вторая - только в 8.2. Обе - по COM-технологии (не NAPI), вроде бы собраны без особых различий (ну, за исключением разной обработки проектов в VS2010). Но С# почему то не хочет работать в 7.7.
Ошибка: Ошибка при инициализации объекта из компоненты <Неизвестная компонента>
При этом объект создается, но с каким то странным именем... (блок данных компоненты с подчеркиванием, вместо ProgID).
Может подскажете хотя бы в какую сторону копать?

Reply


zloy_guitarist March 9 2011, 07:33:24 UTC
Я вот такую функцию юзаю:
Функция Таймер()
Script = New COMОбъект("MSScriptControl.ScriptControl");
Script.language = "vbscript";
Timer = Script.Eval("Cdbl(Timer)");
Return Timer;
КонецФункции

Reply


Компонента anonymous March 16 2011, 07:57:32 UTC
А можно исходники на почту кинуть? начал разбираться с ВК, хочу прикрутить библиотеку Qt к 1С кое что уже получилоьс, только вот не пойму как вернуть результат выполнения функции из вк в 1с? мож подскажешь?

Reply

dragoncat_ru November 28 2012, 07:05:43 UTC
Так вроде если COM-технология используется, то в функции
public void CallAsFunc(int lMethodNum, ref object pvarRetValue, ref System.Array paParams)
вторым параметром (pvarRetValue) - как раз место, куда надо слить значение для 1С... (Осталось только с соответствием типов разобраться - но там вроде не сложно)

Reply


Leave a comment

Up