|
COM-соединение и версии платформ | ☑ | ||
---|---|---|---|---|
0
PsyTech
29.09.16
✎
13:02
|
Всем привет!
При подключении по COM ругается на отличие версии внешней компоненты от корневого модуля, т.к. платформы разные (обе 8.3). Как можно обойти? |
|||
1
Garykom
гуру
29.09.16
✎
13:04
|
1. Везде одинаковая платформа 1С
2. Нафуй этот COM |
|||
2
PsyTech
29.09.16
✎
13:22
|
(1) 1.О чем тогда эта ошиибка?
2. Есть обработка по выгрузке документов, которая уже на COM работает. 3. Как еще залезть в др базу и пошарить по реквизитам документа и реквизитам реквизитов? |
|||
3
PsyTech
29.09.16
✎
13:50
|
Без вариантов? Переделывать на сервисы?
|
|||
4
PsyTech
29.09.16
✎
14:05
|
8.3 c 8.3 почему-то не хочет коннектится:
Произошла исключительная ситуация (V83.COMConnector.1): Версия компоненты 'comcntr' (8.3.6.2390) отличается от версии корневого модуля 'core83' (8.3.8.2054) Может кто сталкивался? |
|||
5
Serginio1
29.09.16
✎
14:16
|
(0) Никак. v8: v8: Использование сборок .NET в 1С 7.x и 8.x
Веренее comcntr.dll загружается, но вот core83.dll использует текущего процесса. А он не совместим с версией запускаемого по COM соединении |
|||
6
PsyTech
29.09.16
✎
14:36
|
(5) Это такая фича 8.3?
8.1 с 8.2 без проблем получалось коннектить... |
|||
7
PsyTech
29.09.16
✎
14:52
|
(5) "Никак" - такой бывает ответ?)
|
|||
8
PloAl
29.09.16
✎
14:55
|
СОМы в регистрируются в реестре по идее там последняя инсталированая версия
|
|||
9
Serginio1
29.09.16
✎
14:56
|
(6)При подключении из 8.x к 8.y используются разные
core8x и core8.y поэтому все нормально |
|||
10
Serginio1
29.09.16
✎
15:00
|
Даже если подключаться из 7 ки
v8: v8: Использование сборок .NET в 1С 7.x и 8.x Сначала подключится к 8.3.3.715\bin\comcntr.dll"; а затем к 8.3.4.365\bin\comcntr.dll"; То выдаст ошибку ком=res.Connect("File=""C:\Тест\ТестоваяБаза"";"); {C:\НОВЫЕОТЧЕТЫ\ТЕСТNETOBJETTOIDISPATCH20.ERT(183)}: V83.COMConnector.1: Версия компоненты 'comcntr' (8.3.4.365) отличается от версии корневого модуля 'core83' (8.3.3.715) То есть она берет уже загруженный core83 |
|||
11
PsyTech
29.09.16
✎
15:38
|
Я так и не понял - как их сконнектить( Неужели никак?
|
|||
12
Gary417
29.09.16
✎
15:41
|
(11) сделать так чтобы версии платформы были одинаковыми
вообще не понимаю зачем вообще платформы разных ревизий (не версий) держать отдельно для разных баз |
|||
13
Gary417
29.09.16
✎
15:42
|
(12) +а, не углядел, всётаки разные версии
но тем не менее, есть смысл подогнать все платформы под одну версию |
|||
14
Serginio1
29.09.16
✎
15:43
|
(11) Можно, но запускать не через Connector а Application
V83.Application |
|||
15
PsyTech
29.09.16
✎
15:44
|
(13) Бух 1 филиала и УТ другого
|
|||
16
PsyTech
29.09.16
✎
15:55
|
(14) там скажет, что версии клиента и сервера отличаются
|
|||
17
oleg_km
29.09.16
✎
16:00
|
(14) Или попробовать накрутить DCOM, чтобы это были разные процессы. У меня похожая может возникнуть проблема, но я похоже сменю все платформы
|
|||
18
Serginio1
29.09.16
✎
16:01
|
(16) Там отдельный процесс. У тебя проблема в том, что comcntr.dll загружается в текущий процесс который уже использует свою core83.Dll.
А V83.Application запускает отдельный процесс. (17) Так проще V83.Application использовать |
|||
19
PsyTech
29.09.16
✎
16:37
|
(18) по сути та-же проблема - разные версии платформ. Или я не догоняю?
|
|||
20
PloAl
29.09.16
✎
16:42
|
можно установить нужную версию 1с по новой
или найти в реестре comcntr.dll и поменять путь к dll |
|||
21
Serginio1
29.09.16
✎
16:46
|
(19) Попробуй для начала.
|
|||
22
Serginio1
29.09.16
✎
16:55
|
Но там может быть проблема под чем зарегистрировано V83.Application 1cv8.exe
Посмотри в regEdit и установи нужный путь. Второй вариант как сказал oleg_km это Книга знаний: Вызов 32-битных COM-объектов на стороне 64-битного сервера 1С |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |