|
Com-подключение к серверу 1С | ☑ | ||
---|---|---|---|---|
0
suvolod
05.07.12
✎
10:32
|
Не могу понять в чем ошибка:
вот так подключает (Результат = Истина): СтрокаПодключения="srvr=""1CV8-SERVER"";ref=""Trade_R"";usr=""user"";pwd=""123"""; C=Новый COMОбъект("V82.Application"); Результат = C.Connect(СтрокаПодключения); а вот так нет (ComОбъект=Неопределено): COMПодключение = Новый COMОбъект("V82.COMConnector"); COMОбъект = COMПодключение.Connect(СтрокаПодключения); погуглил тему... через комконнектор подключение к серверу вроде тоже должно работать (пользовалася всегда им). Почему-же тогда не получается? |
|||
1
izekia
05.07.12
✎
10:45
|
два соединения подряд поднимаешь?
|
|||
2
suvolod
05.07.12
✎
10:49
|
Нет.. кажется начинаю разбираться. Вывел описание ошибки. Вот что пишет:
Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V82.COMConnector.1): Версия компоненты 'comcntr' (8.2.15.301) отличается от версии корневого модуля 'core82' (8.2.15.310) Сервак и клиент действительно разные. Точнее, на клиенте есть и 301, и 310 версия. Как мне указать в строке подключения, какую версию клиента использовать? И второе, почему тогда проходит инициализиция через V82.Application& |
|||
3
izekia
05.07.12
✎
10:53
|
(") для кома кажется никак
|
|||
4
suvolod
05.07.12
✎
10:55
|
:(..........
|
|||
5
hhhh
05.07.12
✎
11:07
|
переустановить 1с, клиента, какой тебе нужно.
|
|||
6
эцп
05.07.12
✎
11:13
|
(2) regsvr32 "c:\Program Files\1cv82\8.2.15.310\bin\comcntr.dll"
|
|||
7
suvolod
05.07.12
✎
11:22
|
(5). Специфика задачи такова, что комп, из под которого запускается com-соеденинение, не обслуживается. Т.е. там стоит локальная база, которая вытягивает с серверной определенные данные, но обновление и обслуживание этой базы не планируется. Хочется ее просто поставить и забыть. А не бежать каждый раз переустанавливать клиента, когда меняется номер серверной версии.
Как лучше это сделать? Если я вместо комконнектора буду использовать v82.Application, чем это хуже? В гугле нашел вот это: http://www.1c-galaxy.ru/forum4/topic288417/ Получается, после выгрузки процесс v82.Application так и не закроется? Есть еще минусы по сравнению с комконнектором? |
|||
8
yabes
05.07.12
✎
11:27
|
(7) А ты укажи в настойках бызы к которой подключаешься Версию 1С:Предприятия! Там сейчас написано 8.2 и он использует последнюю версию платформы, а ты напиши 8.2.301 или что там у тебя!
|
|||
9
suvolod
05.07.12
✎
11:31
|
решение половинчатое.. но спасибо за мысль. Как временная мера подойдет.
|
|||
10
Gobseck
05.07.12
✎
11:31
|
Закладка
|
|||
11
yabes
05.07.12
✎
11:36
|
(9) Напиши мне свой адрес, я тебе скину видео по этому поводу! Там рассматривается v82.Application и Com-соединения!
|
|||
12
suvolod
05.07.12
✎
11:42
|
chromo c. о. б. а. к. а майl.rу
|
|||
13
yabes
05.07.12
✎
11:44
|
(2) "И второе, почему тогда проходит инициализиция через V82.Application&" Потому что когда ты используешь V82.Application, то открывается еще одно независимое приложение 1С с платформой, которая на сервере, а когда ты пользуешься COM, то используется интерфейс текущий базы, а она у тебя запущена на последней версии платформы!
|
|||
14
yabes
05.07.12
✎
11:48
|
(12) отправил!
|
|||
15
izekia
05.07.12
✎
13:05
|
(7) раз в 10 будет все медленнее
|
|||
16
izekia
05.07.12
✎
13:08
|
||||
17
suvolod
05.07.12
✎
13:41
|
(14)Спасибо, сейчас посмотрю.
Миста глючила, не мог зайти.. |
|||
18
suvolod
05.07.12
✎
13:55
|
(16) да ... судя по ссылке, v82.Application - это зло.
Уже просто интересно Получается: v82.Application - это полноценный OLE-сервер, но достаточно медленный и глючный. v82.COMconnector - это обрезанный OLE, который работает только через 1С (т.е. на делфи, например, этот объект не вызовешь), который требует синхронизации версий, но зато он очень быстрый. Так? |
|||
19
izekia
05.07.12
✎
14:06
|
(18) нене комконнектор отовсюду работает, и это совсем не обрезанный оле, скорее всего разные люди их писали, или оле - это обертка над коннектором
|
|||
20
suvolod
05.07.12
✎
14:08
|
тогда мне непонятно, почему комконнектору нужно соответствие версий, а компаликейшену - нет.
|
|||
21
izekia
05.07.12
✎
14:09
|
(20) я им не пользуюсь и не знаю
|
|||
22
yabes
05.07.12
✎
14:16
|
(20) Посмотри видео! Там же это объясняется! Потому что когда ты используешь Application, то открывается еще одно независимое приложение 1С с платформой (а следовательно открывается та версия платформы, которая на сервере), а когда ты пользуешься COM, то используется интерфейс текущий базы (а текущая база у тебя открыта в последней версии платформы, которая не соответствует версии платформы на сервере)! Опять не понятно?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |