Решено: Подключение COM-объектов из 1С8.1 под WINE@Etersoft 1.0.6 (Не удается подключить DLL функцией "ПолучитьCOMОбъект")

WINE@Etersoft, "1С","Ананас" и прочие проекты

Модератор: Модераторы разделов

SanjaRU
Сообщения: 6

Решено: Подключение COM-объектов из 1С8.1 под WINE@Etersoft 1.0.6

Сообщение SanjaRU »

Имеем ALT Linux + WINE@Etersoft 1.0.6 = 1C8.1 вполне прилично работает. Также есть DLL для оптимизации расчета маршрута из одного города в другой (используется в транспортном отделе, стандартные средства 1С очень медленно считают). Эту DLL в конфигурации 1С подключают следующим образом:

Код: Выделить всё

Попытка
atl = ПолучитьCOMОбъект("","CTakePath.CTakePath.1");
Исключение
Сообщить(ОписаниеОшибки(),СтатусСообщения.Внимание);
Возврат Ложь;
КонецПопытки;

В WINE библиотека прописывается так:

Код: Выделить всё

[user@test-altlinux]$ regsvr32 "t:\dll\TakePath.dll"
Xlib:  extension "XFree86-DRI" missing on display "localhost:10.0".
Xlib:  extension "XFree86-DRI" missing on display "localhost:10.0".
Successfully registered DLL t:\dll\TakePath.dll

После чего в system.reg имеем:

Код: Выделить всё

[Software\\Classes\\CLSID\\{6946EE1A-5979-4D7A-BE49-04C68A7DCE85}] 1210261335
@="CTakePath Object"
"AppID"=""
[Software\\Classes\\CLSID\\{6946EE1A-5979-4D7A-BE49-04C68A7DCE85}\\LocalServer32] 1210261335
@="T:\\dll\\TakePath.dll"
"ThreadingModel"=""
[Software\\Classes\\CLSID\\{6946EE1A-5979-4D7A-BE49-04C68A7DCE85}\\ProgID] 1210261335
@="CTakePath.CTakePath.1"
[Software\\Classes\\CLSID\\{6946EE1A-5979-4D7A-BE49-04C68A7DCE85}\\Programmable] 1210261335
[Software\\Classes\\CLSID\\{6946EE1A-5979-4D7A-BE49-04C68A7DCE85}\\TypeLib] 1210261335
@="{F4CFAD43-F334-4A71-89E9-0A08E93E9E79}"
[Software\\Classes\\CLSID\\{6946EE1A-5979-4D7A-BE49-04C68A7DCE85}\\VersionIndependentProgID] 1210261335
@="CTakePath.CTakePath"

Сравнивал с реестром Windows – там тоже самое. Доступ к диску "Т" с нужными правами есть. Но в итоге, когда 1С пытается получить доступ к библиотеке, имеем ошибку:

Код: Выделить всё

Ошибка при вызове метода контекста (ПолучитьCOMОбъект): Ошибка получения объекта COM: Unknown error 0x80080005

В COM-объектах не силен - может WINE-ну нужно еще каких-то системных библиотек установить, кроме тех, что идут в комплекте?
Спасибо сказали:
Аватара пользователя
warlomak
Сообщения: 384
ОС: Ubuntu 10.04

Re: Решено: Подключение COM-объектов из 1С8.1 под WINE@Etersoft 1.0.6

Сообщение warlomak »

А обновить wine не пробовал ? уже 1.0.9 там много поправлено...
Спасибо сказали:
Аватара пользователя
TheTaker
Сообщения: 68
ОС: openSUSE 11.1

Re: Решено: Подключение COM-объектов из 1С8.1 под WINE@Etersoft 1.0.6

Сообщение TheTaker »

warlomak писал(а):
09.05.2008 05:40
А обновить wine не пробовал ? уже 1.0.9 там много поправлено...

+1. На 1.0.7 проблемы нет.
In a free world without restrictions, walls and fences, we do not need Windows® and Gates™
---------------------------------------------
openSUSE 11.1. 2.6.27. 1C 8.1. Lucky Strike.
Спасибо сказали:
SanjaRU
Сообщения: 6

Re: Решено: Подключение COM-объектов из 1С8.1 под WINE@Etersoft 1.0.6

Сообщение SanjaRU »

Поставил WINE@Etersoft 1.0.8 - помогло, спасибо за подсказку!!! :drinks:
Спасибо сказали: