|
Ошибка при создании COMОбъект("ADODB.Connection"). Класс не зарегистрирован | ☑ | ||
---|---|---|---|---|
0
Dmitry_333
19.04.19
✎
10:57
|
Всем доброго дня!
Господа, выручайте, пожалуйста-) Написал обработку на своем компе, все отлично работает. Перенес на комп с ОС winserver 2008 и началось. Выдает вышеописанную ошибку. Перерегистрировал под админом все возможные dll-ки, начиная от comcntr до всех в папке C:\Program Files (x86)\Common Files\System\ado. Скачал и переустановил MDAC. Никакого результата. Дабы отсечь варианты, соединение com V83.Comconnector создается, проверял. Проблема именно с ADODB.Connection. Инет весь перерыл, но ответ ничего не помогло, помогите пожалуйста. |
|||
1
Skylark
19.04.19
✎
11:18
|
1. Нужного объекта всё же не зарегистрировано
2. На нужный объект нет прав у пользователя от имени которого 1С |
|||
2
Dmitry_333
19.04.19
✎
11:36
|
(1) 1. Как понять, какой тогда объект нужно зарегистрировать?
2. От админа все делаю. |
|||
3
Skylark
19.04.19
✎
12:03
|
(2) От админа ты запускаешь 1С. Не знаю как насчет файловой 1С, а в серверном варианте надо проверять права пользователя под которым запускается агент сервера 1С вроде. Там создается служебный 1cv8user или что-то в этом духе.
|
|||
4
Dmitry_333
19.04.19
✎
12:05
|
(3) Файловая у меня...
|
|||
5
Dmitry_333
19.04.19
✎
12:44
|
Вот сейчас еще проверил создание COMОбъект("EXCEL.Application").
Тоже работает. Проблема только с гребаным ADODB.Connection |
|||
6
1Сергей
19.04.19
✎
12:48
|
msado15.dll тоже зарегал?
|
|||
7
Dmitry_333
19.04.19
✎
12:56
|
(6) ага, его в первую очередь
|
|||
8
NorthWind
19.04.19
✎
13:33
|
(0) битность того что регали совпадает с битностью 1С?
|
|||
9
NorthWind
19.04.19
✎
13:37
|
Если вы ставите мдак, то рискну предположить что библиотека адо 32-битная. А процесс 1С, из-под которого вы создаёте объект - тоже? Должен быть тоже 32 бита.
|
|||
10
Dmitry_333
19.04.19
✎
13:56
|
(8) Операционка 64, 1С 32. Регал соответственно: C:\Windows\SysWOW64\regsvr32 «C:\Program Files (x86)\и т.д.
|
|||
11
Сияющий в темноте
19.04.19
✎
14:57
|
пишем простой скритп на vbscript
Set o=CreateObject("AdoDb.Connection") запускаем его через wscript.exe из system32 и из SysWow64 и смотрим на результат. добиваемся,чтобы не было ошибок. если работает из system32, то зарегана 64битная версия,если из syswow64,то 32 битная,если не откуда,то ничего не зарегано. |
|||
12
Dmitry_333
19.04.19
✎
15:34
|
(11) Проделал. Запускал из командной строки. Из system32 не выдало никаких сообщений, ни ошибок. Это значит сработало?
Из SysWow64 вышло окно с ошибкой, что невозможно создание объекта контейнером ActiveX/ |
|||
13
VS-1976
19.04.19
✎
16:00
|
(12) У тебя это всё запускается под пользователем с правами Администратор? Если нет попробуй под пользователем с полными правами запустить. Если клиент-серверная вещь, то службу нужно запускать под пользователем с админискими правами.
|
|||
14
NorthWind
19.04.19
✎
16:04
|
(12) это значит, что у вас зарегистрирована 64-битная версия ADO, а 32-битная не зарегистрирована. Невозможно создание объекта как раз потому, что класс не зарегистрирован.
|
|||
15
NorthWind
19.04.19
✎
16:05
|
вообще это довольно странно, потому что даже под Win10 есть обе версии ADO - и 32 и 64 - "из коробки"
|
|||
16
Dmitry_333
19.04.19
✎
16:15
|
(13) Да, под админом.
(14) хм..., странно. Регистрировал строкой: C:\Windows\SysWOW64\regsvr32 "C:\Program Files (x86)\Common Files\System\ado\msado15.dll Вроде же так регистрируется 32-битные компоненты из под 64-битной ОС. Или я что-то неправильно делал? |
|||
17
Skylark
19.04.19
✎
16:43
|
попробуй выполнить comexp.msc /32
и посмотреть есть ли там твоя компонента |
|||
18
Dmitry_333
19.04.19
✎
16:51
|
(17) Она там есть, но потому я ее вручную там создавал
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |