![]() |
![]() |
![]() |
|
v81.comconnector класс не зарегистрирован | ☑ | ||
---|---|---|---|---|
0
ёпрстна
15.07.10
✎
16:43
|
Есть сервер (ос Windows 7 х64) с установленными 1с 8.1 и 8.2. При попытке выполнить следующую процедуру в 8.2 &НаСервере
Процедура Ком81() Ком = Новый COMОбъект("v81.ComConnector"); КонецПроцедуры вылетает ошибка: {Форма.Форма.Форма(9)}: Ошибка при вызове конструктора (COMОбъект) Ком = Новый COMОбъект("v81.ComConnector"); по причине: Класс не зарегистрирован. Попытки переустановить 1с 8.1 результата не дали. Если посмотреть в реестре, библиотека отвечающая за ком соединение 8.1 (сomcntr.dll) зарегистрирована. У кого есть какие мысли? |
|||
1
Aleksey_3
15.07.10
✎
16:45
|
||||
2
Aleksey_3
15.07.10
✎
16:46
|
Объект V81.Application выполняется в рамках нового процесса 1cv8.exe.
Объект V81.COMConnector является внутрипроцессным сервером. На удаленном компьютере нет процесса, в котором он может быть создан. Чтобы объект V81.COMConnector можно было создать на удаленном компьютере, регистрации компоненты comcntr.dll в COM утилитой regsvr32.exe недостаточно. Требуется выполнить регистрацию на удаленном компьютере компоненты comcntr.dll в качестве приложения COM+. Для этого: * запустите утилиту Component Services; * создайте пустое COM+ приложение с: o Activation type - Server application; o именем, например, V81_COMConnector; o укажите имя пользователя Windows, от имени которого компонента будет запускаться специальный процесс dllhost.exe; * в ветке Components добавьте новую компоненту comcntr.dll из каталога загрузочных модулей 1С:Предприятия. В результате при создании объекта V81.COMConnector на удаленном компьютере будет запущен специальный системный процесс dllhost.exe, и в нем будет создан объект V81.COMConnector. |
|||
3
ёпрстна
15.07.10
✎
16:52
|
(2) мне не нужно создавать v81.comconnector на удаленном компьютере. При попытке создать V81.Application вылетает ошибка : Интерфейс не поддерживается.
|
|||
4
Живой Ископаемый
15.07.10
✎
16:53
|
2(3) путь к сomcntr.dll в реестре - тот котрый нужен? она есть по этому пути?
|
|||
5
hhhh
15.07.10
✎
16:54
|
(3) ну тогда пишите &НаКлиенте. Чего вы прикалываетесь?
|
|||
6
ёпрстна
15.07.10
✎
17:00
|
(4) путь тот что надо, и длл там есть...
(5) нужно на сервере... |
|||
7
DmitrO
15.07.10
✎
17:04
|
(6)сервер 1С предприятия какой стоит? x64 или x86?
|
|||
8
Живой Ископаемый
15.07.10
✎
17:04
|
2(6) она той же сборки что и например rphost, той же разрядности?
|
|||
9
ёпрстна
15.07.10
✎
17:09
|
(7) серв 8.2 х64
|
|||
10
hhhh
15.07.10
✎
17:11
|
имя сервера не задал
COMОбъект (COMObject) По имени приложения Синтаксис: Новый COMОбъект(<Имя>, <ИмяСервера>) Параметры: <Имя> (обязательный) Тип: Строка. ProgID класса COM, с которым он зарегистрирован в системе. Например, "Excel.Application". <ИмяСервера> (необязательный) Тип: Строка. Имя компьютера, на котором надо создать указанный объект. Если параметр опущен, то создается на данном компьютере. Описание: Создает COM-объект внешнего приложения. Пример: Word = Новый COMОбъект("Word.Application"); V8 = Новый COMОбъект("V8.Application"); |
|||
11
Aleksey_3
15.07.10
✎
17:11
|
В качестве приложения COM+. она есть?
|
|||
12
ёпрстна
15.07.10
✎
17:12
|
(8) на данный момент не могу посмотреть. Ну и что же делать если они будут разной сборки?
|
|||
13
ёпрстна
15.07.10
✎
17:18
|
(11) В службах компонентов не нашел ничего похожего. как она там должна называться?
|
|||
14
DmitrO
15.07.10
✎
17:25
|
(9) процесс сервера (а он у тебя x64) может использовать только 64-ный комконнектор (который должен быть зареген в соответствующем разделе реестра, там разные разделы на x64 и на x86), т.к. комконнектор работает в контексте вызывающего процесса.
В составе x64-го дистрибутива сервера предприятия есть такой комконнектор, при установке он регится. А вот в составе обычного x86 дистрибутива идет 32-разрядный комконнектор. Если разрядность сервера и комконнектора разная, то можно будет работать только через COM+, как описано в (2). |
|||
15
DmitrO
15.07.10
✎
17:29
|
(14)+ при работе через COM+ пропадает изюм по скорости (он уже становится не InProc). Т.к. нужны затраты на маршалинг (межроцессное взаимодействие).
|
|||
16
ёпрстна
15.07.10
✎
17:30
|
(14,15) пасиб, буду пробовать
|
|||
17
Живой Ископаемый
15.07.10
✎
17:34
|
+(15) и теплый ламповый звук.. :) извините, не сдержался...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |