Есть код
скрипт = Новый COMОбъект("MSScriptControl.ScriptControl")
Работает на клиенте. Необходимо заставить работать на сервере 1С. Сейчас не работает, ругается
Ошибка при вызове конструктора (COMОбъект)
Сервер x64. Служба запущена от администратора. Подскажите, пожалуйста, как можно победить проблему.
MSScriptControl.ScriptControl насколько знаю не бывает 64 битного. ищите способ запустить его 32 битного под 64 битами. либо враппер какой пишите, хз. либо как-то так http://infostart.ru/public/69986/ (насчет этого варианта не уверен, что прокатит)
(9) andrewks, обернул компоненту MSScriptControl.ScriptControl.1 в COM, всё равно не работает. делал через импорт ужемустановленных компонент. может как-то по другому делать надо? на данный момент выкрутился запуском внешних обработок с помощью виндового планировщика.
(10) vithak
1. Сделать импорт из уже установленных компонент (интерфейсы не появляются и не работает).
2. Добавить из C:\Windows\SysWOW64\msscript.ocx (типа создать новую) - это добавит интерфейсы.
Если сразу начать со второго пункта, то ничего не добавляется. Делал в 2008 R2, 2012.
ОС: Windows Server 2012R2. Сервер 1С x64.Клиент 1С v8.3.5.1186
Проблема :
Модуль: ScrptCtrl = Новый COMОбъект(«MSScriptControl.ScriptControl»);
Выдает ошибку:
{ОбщийМодуль.Хттп.Модуль(55)}: Error calling constructor (COMОбъект): -2147221164(0x80040154): Класс не зарегистрирован.
Скачал Windows Script Control Зарегистрировал: regsvr32 <Путь к установленному Windows Script Control >
Не помогло.
Решение:
1. Запустил консоль «Службы компонентов» (%windir%\system32\comexp.msc)
2. В ветке Приложения COM+ добавл новое приложение: Создать -> Приложение
3. На вопрос «Установка или создание нового приложения» — выбрал «Создать новое приложение».
4. Имя нового приложения лучше написать чтобы было понятно о чем речь: «1С_ScriptControl», способ активации — «серверное приложение».
5. Учетная запись для запуска приложения: Локальная служба — встроенная учетная запись службы.
6.При запросе членов Роли CreatorOwner, помимо существующей учетной записи, добавил туда System и учетную запись под которой работает сервер 1С.
7. В ветке созданного приложения перешел на «Компоненты» и создал компонент: Создать -> Компонент
8. В мастере «Установка компонентов COM+», выбрал «Импорт уже зарегистрированных компонентов». На шаге «Выбор компонентов для импорта» поставил флаг 32 разряда, нашел «MSScriptControl»MSScriptControl
- ссылка ведет в никуда. И где это найти непонятно что найти?
(15) Спасибо пошло!. Но все же вопрос: tsc64.dll - как правильнее устанавливать? Скачал архив, распаковал, запустил setup.exe - тишина. команда "regsvr32 tsc64.dll" помогла - под моим пользователем пошло. Но пойдет ли под другими? Куда tsc64.dll положить? Зачем setup.exe?
14.
VladimirElohov
13725.04.18 16:52 Сейчас в теме
Сегодня в очередной раз настраивал на сервере эту компоненту. Столкнулся с ошибкой Отказано в доступе при создании COM-объекта, аналогичную тому, про которую писали тут. Разобравшись, решил написать здесь дополнение к инструкции (п.6):
При запросе членов Роли CreatorOwner...
необходимо добавить туда группу Пользователи, чтобы любой юзер мог обращаться к этой компоненте через COM. Или другую группу, куда будут входить только те пользователи, которым надо дать соответствующий доступ.