1. АртемВС 06.11.18 16:45 Сейчас в теме

Перестали создаваться COM-объекты на сервере

Добрый день!

На одном из двух полностью идентичных рабочих серверов кластера попытка получения, видимо, любого COM-объекта стала завершаться ошибкой "Недопустимая строка с указанием класса".
Это, например,
Новый COMОбъект("ADODB.Connection");
Новый COMОбъект("WScript.Network");
ПолучитьCOMОбъект("LDAP://RootDSE");


В последнем случае ошибка - "Синтаксическая ошибка".
На втором сервере - все ОК.

Самое интересное, что под тем-же пользователем аналогичная команда power shell выполняется без ошибки!

powershell -Command $connection = New-Object -com "ADODB.Connection"


С чем это может быть связано?
Найденные решения
21. АртемВС 10.11.18 09:15 Сейчас в теме
Вот что получилось в итоге.

Некоторое время назад на этой системе был инцидент с некорректной нехваткой лицензий (т.е. не выдаются лицензии при явно меньшем количестве сеансов). Лечится только перезапуском, админ перезапустил службы. Но, как выяснилось, на этом сервере остался выполняться "старый" rphost. В логах видна попытка запуска нового, который вскоре завершился. Как уж это получилось, установить уже невозможно.

Выяснилось также, что этот рабочий процесс был запущен уже достаточно давно, а перезапуск по превышению размера памяти не был настроен.
Установили настройки перезапуска по превышению, rphost перезапустился, т.к. уже набрал памяти прилично.

Все, ошибки сразу прекратились. COM-коннектор 64-бит, кстати не установлен, это не влияет на ADO и др.

Спасибо большое всем кто откликнулся!
В этом случае логически объяснить проблему было бы невозможно, глюк и все ) Извините )
Остальные ответы
Избранное Подписка Сортировка: Древо
10. EVKash 07.11.18 10:16 Сейчас в теме
(1) Из системных требований к 8.3.11(а значит и всех последующих)
Для Windows Vista SP1, Windows 7, Windows Server 2008 SP1 или Windows Server 2008 R2 нужно установить последний пакет обновлений для работы с внешними соединениями (COM connector) и консолью кластера;
14. АртемВС 07.11.18 10:50 Сейчас в теме
(10) Не нашел, где это написано, не подскажете?

(11) Нет, пользователь сервера в домене, и проблема ведь с многими (всеми?) COM-интерфейсами
18. АртемВС 07.11.18 11:08 Сейчас в теме
19. sergathome 07.11.18 11:09 Сейчас в теме
(17) хыхы, оно, конечно всё так, но только KB2999226 без KB976932 тупо не встанет ;)))
20. АртемВС 07.11.18 11:16 Сейчас в теме
(17)
На этом сервере платформа 8.3.10.2580 и Windows server 2012 R2, т.е. видимо не тот случай
2. sergathome 06.11.18 17:08 Сейчас в теме
В платформе нуралиевские бракоделы в СОМ АДО испортили. RootDSE получить не получится, как не получится выполнить любой запрос к АД без прямого указания домен-контроллера. Это справедливо для платформы 8.3.13.1513, возможно и для более ранних. На 8.3.10.2580 ещё всё работало.
Какая у вас версия ?
3. АртемВС 06.11.18 17:20 Сейчас в теме
(2) Тут как раз 8.3.10.2580, и на втором севере все работает по прежнему, да и на этом работало до определенного момента.

Про 8.3.13.1513 - спасибо, это важно, рано или поздно надо будет обновляться, а использование ADO и запросы к AD в данном случае критичны.
4. sergathome 06.11.18 17:35 Сейчас в теме
(3) А если так:
	ДСО=ПолучитьCOMОбъект("LDAP:");
	Корень=ДСО.OpenDSObject("LDAP://RootDSE", "", "",1);
5. АртемВС 07.11.18 08:20 Сейчас в теме
(4) Нет, без изменений, на первой строке та же ошибка:

Ошибка при вызове метода контекста (ПолучитьCOMОбъект): Ошибка получения объекта COM: -2147221020(0x800401E4): Синтаксическая ошибка
6. sergathome 07.11.18 09:14 Сейчас в теме
(5) Перерегистрация comcntr.dll ничего не даёт ? Сама регистрация не брыкается ?
7. АртемВС 07.11.18 09:37 Сейчас в теме
(6) Админ утверждает, что с этим все ОК, делал .

К тому же, comcntr.dll, насколько я понимаю, имеет отношение только к работе с V83.COMConnector, а не к получению других COM-объектов (ADO, AD, WScript.Network).
8. sergathome 07.11.18 09:39 Сейчас в теме
(7) Неправильно понимаете. Придётся встать за спиной админа и всё проверить. Есть подозрение, что оттуда ноги и выросли ;)
12. АртемВС 07.11.18 10:48 Сейчас в теме
(8) Спасибо, попробуем чуть позже, сейчас не возможности.

Но, на другой системе тест не подтверждает этого:

1) прогоняю тест создания COM-объектов (сервер), в т.ч. V83.COMConnector, ADODB.Connection, WScript.Network - ОК

2) делаю regsvr32 /u "C:\Program Files\1cv8\8.3.10.2699\bin\comcntr.dll"

3) тест - все ОК, кроме V83.COMConnector,

4) делаю regsvr32 "C:\Program Files\1cv8\8.3.10.2699\bin\comcntr.dll"

5) тест - снова все ОК
15. sergathome 07.11.18 10:57 Сейчас в теме
(12) Обёртку для интерфейса оно создаёт и обслуживает. Возможно, что АДО-объект и без comcntr создатся, но полноценно работать с ним вы не сможете. Также невозможно будет использовать конструкции типа ДСО=ПолучитьCOMОбъект("LDAP:").
Обратите внимание из-под какого аккаунта запущен 1с-сервер, возможно, что проблемы там.
16. АртемВС 07.11.18 11:03 Сейчас в теме
9. nyam-nyam 07.11.18 09:56 Сейчас в теме
(7)Кстати, читал как то что в случаях когда просто перерегистрация не решает проблем с COM соединениями, то помогает сначала принудительно снять библиотеку с регистрации (regsvr32 /u) и затем уже регистрировать заново.
13. АртемВС 07.11.18 10:48 Сейчас в теме
11. sergathome 07.11.18 10:41 Сейчас в теме
Ещё один возможный корень проблем с АД - запуск 1с-сервера с локальным (недоменным) аккаунтом. Угадайте, знает что-либо локальный аккаунт про домен, а домен про аккаунт ? ;) Что будет, если запрос подаётся с доменного компа, но с локального аккаунта ?
21. АртемВС 10.11.18 09:15 Сейчас в теме
Вот что получилось в итоге.

Некоторое время назад на этой системе был инцидент с некорректной нехваткой лицензий (т.е. не выдаются лицензии при явно меньшем количестве сеансов). Лечится только перезапуском, админ перезапустил службы. Но, как выяснилось, на этом сервере остался выполняться "старый" rphost. В логах видна попытка запуска нового, который вскоре завершился. Как уж это получилось, установить уже невозможно.

Выяснилось также, что этот рабочий процесс был запущен уже достаточно давно, а перезапуск по превышению размера памяти не был настроен.
Установили настройки перезапуска по превышению, rphost перезапустился, т.к. уже набрал памяти прилично.

Все, ошибки сразу прекратились. COM-коннектор 64-бит, кстати не установлен, это не влияет на ADO и др.

Спасибо большое всем кто откликнулся!
В этом случае логически объяснить проблему было бы невозможно, глюк и все ) Извините )
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Санкт-Петербург
зарплата от 130 000 руб.
Полный день

Программист 1С
Москва
Полный день

Программист 1С
Видное
Полный день

Программист 1С
Москва
зарплата до 120 000 руб.
Полный день

Программист 1С
Ростов-на-Дону
зарплата до 120 000 руб.
Полный день