Имя: Пароль:
1C
1С v8
v8: Внешняя компонента v8RegEx
0 D_E_S_131
 
12.02.14
16:12
Старая тема по этой компоненте закрыта (и не известно жив ли автор), но может кто-то использует ее в работе.
Интересует вопрос использования в v8.3, в частности не работает инициализация объекта (само подключение ВК проходит нормально).

// Инициализация служебной компоненты
    Если ТипОС = 1 Тогда
        ИмяМакета = "ВК_32";
    Иначе
        ИмяМакета = "ВК_64";
    КонецЕсли;
    
    ДД = ОбъектНаСервере.ПолучитьМакет(ИмяМакета);
    
    ИмяВК = ПолучитьИмяВременногоФайла("dll");
    
    ДД.Записать(ИмяВК);
    
    Попытка
        ПодключитьВнешнююКомпоненту(ИмяВК, "v8RegEx", ТипВнешнейКомпоненты.Native);
    Исключение
        Сообщить("ошибка подключения компоненты: " + ОписаниеОшибки());
        Возврат;
    КонецПопытки;
    
    ШаблонВК = Новый Массив(1);
    ШаблонВК[0] = ПолучитьРегулярноеВыражениеПоШаблону1С(ШаблонПоиска);
    
    РЕ = Новый("v8RegEx", ШаблонВК);// здесь ошибка (Тип не определен (v8RegEx))

В документации по ВК для 8.3 указан способ подключения ВК (с сайта ИТС):
Если внешняя компонента подключается с помощью метода ПодключитьВнешнююКомпоненту(), то формирование параметра в операторе Новый() (имени создаваемого типа) выполняется из следующих частей:

● Текст Addin.;

● Имя, указанное в качестве параметра Имя метода ПодключитьВнешнююКомпоненту();

● Имя объекта, реализованного во внешней компоненте.

Если во внешней компоненте реализован объект Таймер и подключение внешней компоненты выполняется следующим образом: ПодключитьВнешнююКомпоненту(НавСсылка, "MyName");, то для создания объекта из внешней компоненты, следует указать следующий идентификатор: Новый("Addin.MyName.Таймер").

И вот по этой технологии не понятно, что в этой ВК будет 3-й параметр инициализации объекта "Имя объекта".
1 pumbaEO
 
12.02.14
16:44
Автор жив, болел просто.
2 D_E_S_131
 
12.02.14
16:53
Вот бы он еще появлялся на мисте...
3 pumbaEO
 
12.02.14
16:56
(2) пусть человек спокойно себе работает, а то сразу заклюют, с требованием "Подавай нам снегопат на 8.3"
4 mehfk
 
12.02.14
16:56
(0) Надо написать волшебное слово.
5 mehfk
 
12.02.14
16:57
(4) к (2)
6 D_E_S_131
 
12.02.14
17:24
Проверил. На клиенте через УстановитьВК, ПодключитьВК синтаксис, описанный в документации отрабатывает. А вот с сервером беда:
На Win_x64 и 1С_x32 - подключение ВК_х32 вешает приложение и потом выпадает, подключение ВК_х64 просто не подключает (метод "Подключить..." возвращает ЛОЖЬ).

На Win_x64 и 1С_х64 - подключение ВК_х64 вешает приложение и потом выпадает, подключение ВК_х32 возвращает ЛОЖЬ.
7 Лефмихалыч
 
12.02.14
17:34
(0) Юзай = Новый COMОбъект("Vbscript.regexp")
8 D_E_S_131
 
12.02.14
17:45
(7) Вот уже к этому же выводу и прихожу.
9 D_E_S_131
 
12.02.14
19:56
В платформе оказалось дело. Все описанное в документации великолепно работает, но на 8.2. На 8.3.4.408 - нет.
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.