Имя: Пароль:
1C
1С v8
Не подключается dll из макета
0 web_profiler
 
03.04.15
10:33
Подскажите, пожалуйста, в чем может быть проблема?

Если пишу:
        ПодключитьВнешнююКомпоненту("C:\333\AddInNative.dll","kbd", ТипВнешнейКомпоненты.Native);
        ВККонтекст = Новый("AddIn.kbd.KeyboardLayout");

Все отлично отрабатывает, но если
        ПодключитьВнешнююКомпоненту("ОбщийМакет.AddInNative","kbd", ТипВнешнейКомпоненты.Native);
        ВККонтекст = Новый("AddIn.kbd.KeyboardLayout");

Попадаю в исключение на строке ВККонтекст = Новый("AddIn.kbd.KeyboardLayout")

Файл манифеста:

<?xml version="1.0" encoding="utf-8"?>
<bundle xmlns=" v8.1c.ru/8.2/addin/bundle »»">
  <component arch="i386" type="native" path="AddInNative.dll" os="Windows"/>
  <component arch="x86_64" type="native" path="AddInNative.dll" os="Windows"/> </bundle>
</bundle>

запаковано в ZIP и загружено в Общий макет двоичными данными
1 web_profiler
 
03.04.15
10:36
GROOVY, я знаю что ты тут :)
2 web_profiler
 
03.04.15
10:36
Помоги коллеге с Одесского офиса
3 web_profiler
 
03.04.15
10:38
Ладно, полез в диск ИТС
4 web_profiler
 
03.04.15
10:41
Манифест составлен верно
Может dll не через макет не работает?
5 web_profiler
 
03.04.15
10:47
ааааа, хелп!!!
За что 1С привередливая такая???
6 web_profiler
 
03.04.15
10:52
Файл манифеста подправил:
<?xml version="1.0" encoding="utf-8"?>
<bundle xmlns=" v8.1c.ru/8.2/addin/bundle »»">
  <component arch="i386" type="native" path="AddInNative.dll" os="Windows"/>
  <component arch="x86_64" type="native" path="AddInNative.dll" os="Windows"/>
</bundle>
7 web_profiler
 
03.04.15
10:52
все-равно не работает
8 web_profiler
 
03.04.15
10:53
сам с собой уже 20 мин общаюсь
мож, кто-то подскажет чето?
9 eklmn
 
гуру
03.04.15
10:56
клиент,сервер? тонкий,толстый?
10 web_profiler
 
03.04.15
11:00
На клиенте пробывал и модуле управляемого приложения пробывал
11 DmitrO
 
03.04.15
11:02
ну вот манифест точно составлен не верно:
не может быть, чтобы для архитектуры i386 и для x86_64 использовался один и тот же файл AddInNative.dll
он на самом-то деле 32 или 64?
12 web_profiler
 
03.04.15
11:04
32
13 web_profiler
 
03.04.15
11:04
строку убирал
14 web_profiler
 
03.04.15
11:05
<?xml version="1.0" encoding="utf-8"?>
<bundle xmlns=" v8.1c.ru/8.2/addin/bundle »»">
  <component arch="i386" type="native" path="AddInNative.dll" os="Windows"/>
</bundle>
15 DmitrO
 
03.04.15
11:06
если судя по (0) работает на клиенте, то длл 32битная, тогда строчка x86_64 точно лишняя
16 web_profiler
 
03.04.15
11:06
(15) уже так и не работает
17 kortun
 
03.04.15
11:08
а тут <bundle xmlns=" v8.1c.ru/8.2/addin/bundle »»">
у тебя все правильно?
или это форум просто корежит так строку <bundle xmlns="http://v8.1c.ru/8.2/addin/bundle">;?
18 kortun
 
03.04.15
11:08
может символы »» мешают?
19 web_profiler
 
03.04.15
11:08
нет не форум, у меня именно так
20 web_profiler
 
03.04.15
11:09
ghj,e.
21 web_profiler
 
03.04.15
11:09
пробую
22 web_profiler
 
03.04.15
11:10
<?xml version="1.0" encoding="utf-8"?>
<bundle xmlns="http://v8.1c.ru/8.2/addin/bundle">;
  <component arch="i386" type="native" path="AddInNative.dll" os="Windows"/>
</bundle>

тоже не работает
23 web_profiler
 
03.04.15
11:10
ой
24 web_profiler
 
03.04.15
11:11
25 web_profiler
 
03.04.15
11:11
не работает
26 DmitrO
 
03.04.15
11:12
(25)в тонком загружаешь?
27 web_profiler
 
03.04.15
11:13
да
28 kortun
 
03.04.15
11:15
точку с запятой убери в конце
29 kortun
 
03.04.15
11:16
уж совсем для чистоты теста
30 DmitrO
 
03.04.15
11:16
теперь вроде все правильно, а ты ее установил?
УстановитьВнешнююКомпоненту вызывал?
31 web_profiler
 
03.04.15
11:17
ее нету, форум добавил
32 DmitrO
 
03.04.15
11:17
(28) ; форум добавляет
33 web_profiler
 
03.04.15
11:17
УстановитьВнешнююКомпоненту - использование модальных вызовов в данном режиме запрещено
34 DmitrO
 
03.04.15
11:18
да блин, ну НачатьУстановкуВнешнейКомпоненты вызывал?
35 web_profiler
 
03.04.15
11:22
36 web_profiler
 
03.04.15
11:23
НачатьУстановкуВнешнейКомпоненты(,"ОбщийМакет.AddInNative");
    Попытка
        ПодключитьВнешнююКомпоненту("ОбщийМакет.AddInNative","kbd", ТипВнешнейКомпоненты.Native);
        ВККонтекст = Новый("AddIn.kbd.KeyboardLayout");
    Исключение
        Сообщить("Ошибка при инициализации внешней копоненты!",СтатусСообщения.Важное);
        Возврат;
    КонецПопытки;

Все там же в исключение на Строке
        ВККонтекст = Новый("AddIn.kbd.KeyboardLayout");
37 DmitrO
 
03.04.15
11:26
(35) а вот это говорит о том что она в манифесте не может найти нужный экземпляр файла компоненты
(36) код не верный нельзя подключать сразу после установки, ибо этот вызов не модальный, надо сначала установки дождаться
38 web_profiler
 
03.04.15
11:27
(37) вызвать процедуру ОписаниеОповещенияОЗавершении?
39 web_profiler
 
03.04.15
11:34
НачатьУстановкуВнешнейКомпоненты(новый ОписаниеОповещения("ОповещенияОЗавершении",ЭтотОбъект),"ОбщийМакет.AddInNative");

все равно (35)
40 web_profiler
 
03.04.15
11:36
(37) и что же с манифестом не так?
имя dll: AddInNative.dll
41 web_profiler
 
03.04.15
11:41
ааааааааааааа !!! :((
Ну что за нафиг, почему с макета не тянет, зараза???
42 DmitrO
 
03.04.15
11:41
(38)да
(39)ну это понятно, что сообщение от этого не изменится
(40)хз.. вроде все правильно, если даже предположить что файл манифеста на самом деле не в utf-8, а в 1251, то все равно должно загрузиться..
проверь кодировку файла, есть в нем BOM?
43 web_profiler
 
03.04.15
11:44
а BOM таки нет,
44 web_profiler
 
03.04.15
11:48
сейчас попробую
45 DmitrO
 
03.04.15
11:52
открой манифест в студии и в меню Файл/Дополнительные параметры сохранения..
и сохрани
46 DmitrO
 
03.04.15
11:54
(45)+ в UTF-8
47 web_profiler
 
03.04.15
11:54
все ок, создал новый файл манифеста, тупо скопировал со старого и заработало
О Боги, за что мне это и почему???
48 web_profiler
 
03.04.15
11:55
(46) спасибо огромное за поддержку и помощь
49 web_profiler
 
03.04.15
11:56
а как обойти постоянную "НачатьУстановкуВнешнейКомпоненты"?
каждый раз теперь выдает "Внешняя компонента уже установлена"
50 web_profiler
 
03.04.15
11:58
ссори, "Внешняя компонента уже подключена"
51 DmitrO
 
03.04.15
12:04
(47)а то ж, куда она денется с подводной лодки-то )
(49)да никак, этот вызов относится как бы к компьютеру, она на компе должна быть установлена однажды
52 DmitrO
 
03.04.15
12:08
(51)установка компоненты это какбы интерактивное действие пользователя.. развели тут какую-то ботву авторы платформы.. причем макет указывается в установку, при этом файл компоненты выгружается из макета на диск в профиль пользователя..
а потом и при подключении указывается снова тот же макет но файл уже должен быть на диске - идиотизм какой-то..
53 web_profiler
 
03.04.15
12:08
мож через константу?
54 web_profiler
 
03.04.15
12:11
как же обойти эту фигню?
55 web_profiler
 
03.04.15
12:11
где-то в ут видел, "...если КомпонентаУстановлена..."
56 DmitrO
 
03.04.15
12:12
(53)этот вызов относится к компьютеру!
57 DmitrO
 
03.04.15
12:18
(54)сначала подключай сразу, если исключение, то устанавливай, в ответе на установку подключай еще раз.
58 DmitrO
 
03.04.15
12:21
(57)+ хочется "поблагодарить" умников из 1С за приятные моменты в решении задач обновления компонент при таком алгоритме загрузки (57)
59 web_profiler
 
03.04.15
12:44
сделал как УТ - все супер, спасибо еще раз ОГРОМНОЕ
60 web_profiler
 
03.04.15
12:45
Да, кстати в веб-клиенте не работает

Платформа: 1С:Предприятие 8.3 (8.3.5.1443)
Конфигурация: MegaZakaz (1.3.3.1)
Режим: Веб-сервер (сжатие: обычное)
Приложение: Веб-клиент
Локализация: Информационная база:русский (Россия), Сеанс:русский (Россия)
Вариант интерфейса: Версия 8.2

Ошибки:
--------------------------------------------------------------------------------

Установка внешней компоненты не выполнена!
В процессе установки произошла ошибка!
Возможно, отсутствует компонента для используемого клиентского приложения
61 DmitrO
 
03.04.15
12:57
(60)ну так конечно, чтобы в веб-клиентах работало, надо еще адаптеры писать, под каждый браузер практически, а если еще браузеры 64битные (IE например такой может быть), то еще и 64битную версию самой компоненты надо написать кроме адаптера.
62 web_profiler
 
03.04.15
12:59
покажи пример, плиз
63 DmitrO
 
03.04.15
13:04
на итс в технологии создания внешних компонент есть примеры всех адаптеров, это такие прокси dll.
64 web_profiler
 
03.04.15
13:04
кстати, поставил конфу на сервак (64), запустил в отладке - Компонента установилась
65 DmitrO
 
03.04.15
13:06
(64)все правильно, она же у тебя тонким клиентом загружается, а клиент 32битный, просто работает на 64битной ОС.
66 web_profiler
 
03.04.15
13:06
Там в json формате установочный пакет собирать надо
О УЖАС!!!
67 web_profiler
 
03.04.15
13:06
Под каждый браузерррррр
68 DmitrO
 
03.04.15
13:07
1С не делает 64битных клиентов для windows.
69 web_profiler
 
03.04.15
13:10
Я нашел на ИТС чем мне заниматься прийдется,
у меня вопрос - если есть чето готовое, можешь поделиться?
70 web_profiler
 
03.04.15
13:11
<?xml version="1.0" encoding="UTF-8" ?>
<bundle xmlns="http://v8.1c.ru/8.2/addin/bundle">;
<component os="Windows" path="AddIn_FF6Windows_x86.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="i386" client="Firefox" clientVersion="6.*" />
<component os="Linux" path="AddIn_FF6Linux_x86.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="i386" client="Firefox" clientVersion="6.*" />
<component os="Linux" path="AddIn_FF6Linux_x86_64.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="x86_64" client="Firefox" clientVersion="6.*" />
<component os="Windows" path="AddIn_FF19Windows_x86.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="i386" client="Firefox" clientVersion="19.*" />
<component os="Linux" path="AddIn_FF19Linux_x86.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="i386" client="Firefox" clientVersion="19.*" />
<component os="Linux" path="AddIn_FF19Linux_x86_64.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="x86_64" client="Firefox" clientVersion="19.*" />
<component os="Windows" path="AddIn_FF22Windows_x86.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="i386" client="Firefox" clientVersion="22.*" />
<component os="Linux" path="AddIn_FF22Linux_x86.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="i386" client="Firefox" clientVersion="22.*" />
<component os="Linux" path="AddIn_FF22Linux_x86_64.xpi" type="plugin" object="@vendor.ru/ClassService;1" arch="x86_64" client="Firefox" clientVersion="22.*" />
<component os="Windows" path="Addin_IEWindows_x86.cab" type="plugin" object="MyComponenIE.AddInServiceEx" arch="i386" client="MSIE" />
<component os="Windows" path="AddIn_IEWindows_x86_64.cab" type="plugin" object=" MyComponenIE.AddInServiceEx" arch="x86_64" client="MSIE" />
<component os="Windows" path="AddIn_ChrWindows_x86.msi" type="plugin" object=" com.YourCompanyName.YouExtensionName.1" arch="i386" client="Chrome" />
<component os="Linux" path="AddIn_ChrLinux_x86.sh" type="plugin" object=" com.YourCompanyName.YouExtensionName.1" arch="i386" client="Chrome" />
<component os="Linux" path="AddIn_ChrLinux_x86_64.sh" type="plugin" object=" com.YourCompanyName.YouExtensionName.1" arch="x86_64" client="Chrome" />
<component os="Windows" path="AddIn_NPAPIWindows_x86.msi" type="plugin" object=" application/component-example-1" arch="i386" client="Safari" />
<component os="MacOS" path="AddIn_SafMacOS_x86.pkg" type="plugin" object=" application/component-example-1" arch="i386" client="Safari" />
<component os="Windows" path="AddInNative.dll" type="native" arch="i386" />
<component os="Windows" path="AddInNative64.dll" type="native" arch="x86_64" />
<component os="Linux" path="AddInNative.so" type="native" arch="i386" />
<component os="Linux" path="AddInNative64.so" type="native" arch="x86_64" />
</bundle>,
71 web_profiler
 
03.04.15
13:11
ничего не понятно, воооще
72 DmitrO
 
03.04.15
13:14
(71)это да, там реальный вынос мозга..
готовое есть кое чего, но поделиться не могу, коммерческая тайна, есть же в составе скачиваемых материалов примеры все.
73 web_profiler
 
03.04.15
13:14
а не подожди, там же на диске есть какие-то lib файлы, jar, bat - файлы, исходники
74 web_profiler
 
03.04.15
13:15
можна в почту напишу
75 DmitrO
 
03.04.15
13:29
skype: dmitro-75
76 DmitrO
 
03.04.15
13:31
или в почту
77 web_profiler
 
03.04.15
13:37
написал на почту
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший