|
Загрузка внутрипроцессорного сервера 1С V83COMConnector TYPE_E_CANTLOADLIBRARY
| ☑ |
0
rowvg
naïve
03.07.20
✎
09:03
|
Из программы на C# работаю с 1С посредством их внутрипроцессорного COM сервера. На одном компьютере с Windows 7 загрузка сервера не происходит, выбрасывается исключение со следующим описанием:
Ошибка при загрузке библиотеки. (Исключение из HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY)).
Активацию сервера делаю так:
typeOfOblect = Type.GetTypeFromProgID("V83.COMConnector");
connectorInstance = (IV8COMConnector)Activator.CreateInstance(typeOfOblect);
comConnection = typeOfOblect.InvokeMember("Connect", INVOKE_METHOD, null, connectorInstance, new object[] { connectionString1C });
Исключение выбрасывается на второй строке: connectorInstance = (IV8COMConnector)Activator.CreateInstance(typeOfOblect);
Проект компилируется строго под x86
Подскажите, пожалуйста, в каком направлении искать ошибку?
|
|
1
Волшебник
модератор
03.07.20
✎
09:04
|
правильно typeOfObject
|
|
2
rowvg
naïve
03.07.20
✎
09:07
|
(1) Это просто опечатка
(0) Забыл добавить, что на клиентском компьютере установлена 64 битная ось
|
|
3
rowvg
naïve
03.07.20
✎
09:09
|
2+ Я создал обертку в виде COM+ приложения - не помогло
|
|
4
rowvg
naïve
03.07.20
✎
09:11
|
3+ Заменил comcmtr.dll с другого компьютера где все работает - то же самое
|
|
5
rowvg
naïve
03.07.20
✎
09:21
|
COM+ дает более развернутую информацию об ошибке: Невозможно привести COM-объект типа "System._ComObject" к интерфейсному типу "V83.IV8COMConnector". Операция завершилась со сбоем, поскольку вызов QueryInterface COM-компонента для интерфейса с IID "{BA4E52BD-DCB2-4BF7-BB29-84C1CA456A8F}" возвратил следующую ошибку: Ошибка при загрузке библиотеки. (Исключение из HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY)).
|
|
6
rowvg
naïve
03.07.20
✎
09:30
|
Может быть все дело в заглушке, через которую управляемый код работает с 1С COM сервером? Может быть windows 7 не содержит нужной dll?
|
|