После обновления платформы 1С на последнюю текущую версию столкнулся с ошибкой в обработке, которая работала еще до сегодняшнего дня.
Вызов осуществляется на сервере 1С:Предприятия, в управляемом приложении.
Эксель = Новый COMОбъект(«Excel.Application»);
При этом сервер приложения 1С 32х разрядный, хотя и стоит на Windows 64 битной версии.
Если запускать этот же метод на клиентской части, то помогает стандартное действие, выполненное с правами администратора:
Regsvr32 «C:\Program Files (x86)\1cv8\(версия платформы)bin\comcntr.dll»
Однако не в этом случае…
Поиск по интернету и «гугление» конечно помогает в большинстве случаев 🙂 однако вариантов было перепробовано несколько и ничего не помогло кроме следующего:
- Заходим на сервер приложений 1С под локальным админом
- Запускаем DCOMCNFG (Консоль настроек «Component Services»)
- Открываем ветку Console Root -> Component Services -> Computers -> My computer -> DCOM Config
- Ищем «Microsoft Excel Application»
- Если нашли, то переходим к пункту 4 (Настраиваем свойства DCOM компонента «Microsoft Excel Application»)
- Закрываем «Component Services»
- Настройка реестра
- Запускаем REGEDIT
- Открываем ветку Computer\HKEY_CLASSES_ROOT\AppID\EXCEL.EXE, если ее нет, то создаем
- Создаем в ней строковый параметр AppID = {00020812-0000-0000-C000-000000000046}
- Выполняем команду «mmc comexp.msc /32», которая делает то же что и DCOMCONFIG, но позволяет видеть 32 битные компоненты.
- После этого в Component Services должен появиться «Microsoft Excel Application»
- Настраиваем свойства DCOM компонента «Microsoft Excel Application»
- Закладка «Security»
- «Launch and Activation Permissions» — Customize — Edit
- Добавляем пользователя, под которым запускается агент сервера 1С
- Назначем ему только следующие права (allow):
- Local Launch
- Local Activation
- «Access Permissions» — Customize — Edit
- Добавляем пользователя, под которым запускается агент сервера 1С
- Назначаем ему только следующие права (allow):
- Local Access
- «Launch and Activation Permissions» — Customize — Edit
- Закладка «Identity»
- Должно быть выбрано «The launching user»
- Закладка «Security»
- Системные папки
- Папка «C:\Windows\SysWOW64\config\systemprofile\Desktop\»
- Проверяем наличие папки , если нет -то создаем.
- Заходим в свойства этой папки.
- Закладка Security
- Добавляем, если нет, пользователя, под которым запускается агент сервера 1С
- Добавляем право «Read» и «Write»
- Папка «C:\Windows\System32\config\systemprofile\Desktop\»
- Проверяем наличие папки , если нет -то создаем.
- Заходим в свойства этой папки.
- Закладка Security
- Добавляем, если нет, пользователя, под которым запускается агент сервера 1С
- Добавляем право «Read» и «Write»
- Папка «C:\Windows\SysWOW64\config\systemprofile\Desktop\»
Источник информации © Инфостарт.
Sh_Vlad
13.01.15
✎
12:18
Здравстуйте.
Перестало работать:
Ексель = Новый COMОбъект(«Excel.Application»);
по причине:
-2147221005(0x800401F3): Недопустимая строка с указанием класса
Куда смотреть?
Спасибо.
mikecool
13.01.15
✎
12:20
не установлен эксель, смотреть в программы и компоненты
Sh_Vlad
13.01.15
✎
12:20
(1) Установлен. 2003
Feunoir
13.01.15
✎
12:25
Проверить наличие HKEY_CLASSES_ROOT\Excel.Application в реестре.
Sh_Vlad
13.01.15
✎
12:33
(3) Наличиствует. + HKEY_CLASSES_ROOT\Excel.Application.11
Sh_Vlad
13.01.15
✎
12:34
Работало до недавнего времени. Года три обработке
Leksus
13.01.15
✎
12:35
В релизе 8.3.5.1400 кажется что-то исправляли с подключением ком
senior
13.01.15
✎
12:38
создай этот же COM объект в блокноте на VB, думаю проблема не в 1С
Sh_Vlad
13.01.15
✎
13:05
(7) Если можно — поподробнее…
DrZombi
13.01.15
✎
13:13
(8) А точно 2003? Бывает, что обновляются до 2007 и усе
Rie
13.01.15
✎
13:15
(4) Ну так попробуй указать явно «Excel.Application.11»
Rie
13.01.15
✎
13:18
+(10) И посмотри, на всякий случай, в реестре в CLSID — путь правильный?
Sh_Vlad
13.01.15
✎
13:23
(11) Там вообще не путь. А {00024500-0000-0000-C000-000000000046}
Rie
13.01.15
✎
13:28
(12) В разделе CLSID этот ключ найди и посмотри куда LocalServer (LocalServer32) смотрит.
Sh_Vlad
13.01.15
✎
13:48
(13) Путь правильный
Rie
13.01.15
✎
13:49
Пробовал (10)?
Sh_Vlad
13.01.15
✎
13:49
Да
Rie
13.01.15
✎
14:15
(8) Создай (в блокноте) файл с расширением .vbs
Вставь туда
set xl = CreateObject(«Excel.Application»)
xl.Workbooks.Add
xl.Visible = 1
Сохрани и запусти.
Что получилось?
Sh_Vlad
13.01.15
✎
14:59
(17) Получилось — открылась новая книга Ексель
Sh_Vlad
13.01.15
✎
15:03
Причем оба варианта — Excel.Application и Excel.Application.11
Sh_Vlad
13.01.15
✎
15:54
Люди добрые, есть еще варианты причин ошибки?
Zamestas
13.01.15
✎
15:57
(20) Запустить от администратора пробовал?
Sh_Vlad
13.01.15
✎
16:01
(21) Что запустить — Предприятие? Вообще-то учетка админская…
DrZombi
13.01.15
✎
16:10
(22) Обновись на старый релиз
Zamestas
13.01.15
✎
16:11
(22) Да предприятие, в win7/2008 и старше админские права не означают полные права.
Sh_Vlad
13.01.15
✎
16:19
Не помогло…
ZUM
13.01.15
✎
16:31
Здравствуйте!
1) Попробуйте это
При подключении к базе com-объектом вылетает ошибка (файл с ошибкой во вложении, вылетает на строчке кода при создании ком-объекта: Коннектор = Новый COMОбъект(«V8.COMConnector»);)
На форумах по данной ошибке нашла решение, но попробовав это проделать, у меня не получилось уже на первом пункте, возможно не хватает прав. Прошу вас мне помочь.
1. Администрирование — Службы компонентов – Компьютеры – Мой компьютер – Приложения COM+ — Создать приложение – Создать новое приложение – вводим имя «V82.COMConnector»(переключатель «Серверное приложение») – Указанный пользователь (Администратор)
2. В появившейся ветке V82COMConnector – подветка Компоненты – создание нового компонента – Установка новых компонентов — <каталог 1С>\bin\comcntr.dll
3. Правой кнопкой по ветке V82COMConnector – Свойства – Безопасность – Снял галку «Принудительная проверка доступа для приложений» — Поставил галку «Применить политику программных ограничений» — Уровень ограничений «Неограниченный»
2) Если не помогло
Проблема :
1. Не установлен Microsoft Excel
2. Для работы ком-объекта необходимо наличие папки
For Windows 2008 Server x64
C:\Windows\SysWOW64\config\systemprofile\Desktop
For Windows 2008 Server x86
C:\Windows\System32\config\systemprofile\Desktop
Источник (https://social.msdn.microsoft.com/Forums/en-US/b81a3c4e-62db-488b-af06-44421818ef91/excel-2007-automation-on-top-of-a-windows-server-2008-x64?forum=innovateonoffice)
Sh_Vlad
13.01.15
✎
16:48
1) Проделал.
2) Папка есть, только вместо Desktop — по русски Рабочий стол
Не помогло…
igork1966
13.01.15
✎
16:51
(27) а если указать имя сервера в конструкторе?
localhost
Rie
13.01.15
✎
16:51
(18) То есть, Excel спокойно коннектится.
Наивный вопрос: а откуда коннектится? С клиента или с сервера?
Rie
13.01.15
✎
16:52
(28) То это будет уже совсем другая история…
Sh_Vlad
13.01.15
✎
16:59
(29) Клиент предприятия на терминальном сервере. Там же запускал скрипт.
Sh_Vlad
13.01.15
✎
17:00
Или вопрос не про то?
Rie
13.01.15
✎
17:03
(32) Про то. Тогда — странно очень.
Может, обработку правили — и буковку не из того алфавита поставили? Или (6)…
Sh_Vlad
13.01.15
✎
17:05
Работало везде «еще вчера»
Обработку не правили уже полгода (тем более в этой строке). Ексель не переустанавливали, т.к. см. выше
yukon
13.01.15
✎
17:05
(33)(32) Не про то.
Создание СOM-объекта происходит &НаКлиенте или &НаСервере?
Sh_Vlad
13.01.15
✎
17:06
&НаСервере
Sh_Vlad
13.01.15
✎
17:08
Сейчас надо &НаКлиенте?
igork1966
13.01.15
✎
17:09
(37) дык у тебя на сервере и пытается создать объект
Rie
13.01.15
✎
17:10
Так он и vbs запускал на сервере-то… И обработка раньше у него работала…
yukon
13.01.15
✎
17:11
Значит только костылями. Заказчику покажи это:
Вопросы серверной автоматизации Office
https://support.microsoft.com/kb/257757
Корпорация Microsoft на сегодняшний день не рекомендует производить и не поддерживает автоматизацию программ из пакета Microsoft Office с помощью автоматических, неинтерактивных клиентских приложений или компонентов (включая ASP, DCOM и службы NT), поскольку при запуске в этом окружении программы пакета Office могут работать нестабильно или зависать.
yukon
13.01.15
✎
17:12
(39) На каком сервере — на терминальном или 1С-ном?
Rie
13.01.15
✎
17:13
(41) Предполагаешь, что они сервер переставляли? Говорит ведь, что раньше — работало.
yukon
13.01.15
✎
17:16
(42) 1С-ный по любому переставляли.
Для 8.3 есть еще вариант, что включили в профилях безопасности ограничение на COM-объекты.
Sh_Vlad
13.01.15
✎
17:28
Так что с 1С-ным сервером не так?
yukon
13.01.15
✎
17:49
(44) Пока все нормально (глянь на всякий случай профили безопасности).
Терминальный сервер и сервер 1С на одной машине работают?
Sh_Vlad
14.01.15
✎
08:56
Проблема остается.
(45) На разных.
ProxyInspector
14.01.15
✎
09:15
Явно автор не раскрыл когда у него перестало работать. Я боюсь, что после пытания паяльником выяснится, что был установлен Windows 2008 x 64 сервер. Установлен сервер 1с предприятия х 64. Обновлена версия 1с предприятия с 8.2 на 8.3. Запуск сервера 1с предприятия раньше запускался от имени System, а сейчас запускается от имени Usr1c8. Раньше 1с работала в режиме толстого клиента, а сейчас на управляемых формах.
И вот после этого НЕОЖИДАННО перестал работать Exell в режиме ОЛЕ.
Я почему-то не очень сильно удивляюсь
Sh_Vlad
14.01.15
✎
09:45
(47) Что нужно изменить в коде чтобы работала конструкция Новый COMОбъект(«Excel.Application»);
Все указанные изменения имеют место быть. Обработка сделана под управляемые формы
Dolphinbet
14.01.15
✎
09:51
To resolve this issue follow these steps
1. Login to the server as a administrator.
2. Go to «Start» -> «Run» and enter «taskmgr»
3. Go to the process tab in task manager and check «Show Processes from all users»
4. If there are any «Excel.exe» entries on the list, right click on the entry and select «End Process»
5. Close task manager.
6. Go to «Start» -> «Run» and enter «services.msc»
7. Stop the service automating Excel if it is running.
8. Go to «Start» -> «Run» and enter «dcomcnfg»
9. This will bring up the component services window, expand out «Console Root» -> «Computers» -> «DCOM Config»
10. Find «Microsoft Excel Application» in the list of components.
11. Right click on the entry and select «Properties»
12. Go to the «Identity» tab on the properties dialog.
13. Select «The interactive user.»
14. Click the «OK» button.
15. Switch to the services console
16. Start the service automating Excel
17. Test you application again.
yukon
14.01.15
✎
10:07
(46) Вот это «Получилось — открылась новая книга Ексель» делалось на сервере 1С?
Sh_Vlad
14.01.15
✎
12:04
Помогла переустановка офиса на сервере.
Теперь не хочет открывать шаблон:
Ошибка при вызове метода контекста (Add)
Ексель.WorkBooks.Add(«\\……..\Template\Zayvka.xlt»);
Произошла исключительная ситуация (Microsoft Excel): Приложению Microsoft Excel не удается получить доступ к файлу «\………..\Template\Zayvka.xlt». Это может быть вызвано одной из следующих причин.
• Указан несуществующий файл или путь.
• Файл используется другой программой.
• Имя книги, которую вы пытаетесь сохранить, совпадает с именем другой книги, открытой в данный момент.
Файл существует. Никем не открыт. Имя не с чем не совпадает
Sh_Vlad
14.01.15
✎
12:04
Доступ полный для всех
Sh_Vlad
14.01.15
✎
12:22
Скрипт открывает этот файл
Dolphinbet
14.01.15
✎
12:59
(51) см. 49
Dolphinbet
14.01.15
✎
13:04
Только в пункте 13. Select «The interactive user.» вместо interactive user надо указать конкретного пользователя под котороым запускается сервер 1С-Предприятие.
DrZombi
14.01.15
✎
13:07
(47) Обычно такое перестает работать после обновления Форточек.
У нас как то было, при обновлении рабочей станции, т.е. обычного ПК. Но офис там был 2007-ой, обновление на него так подействовало
Sh_Vlad
14.01.15
✎
13:08
По (49) все проделано. «Microsoft Excel Application» такой ветки в настройках нет. В тех что есть стоит «Запускающий пользователь» («The interactive user»? ).
Dolphinbet
14.01.15
✎
13:10
(57) так вот надо не «Запускающий пользователь» а тот под которым запускается сервер 1С
Sh_Vlad
14.01.15
✎
13:27
Сервер запускается системной учетной записью. И куда пихать этого пользователя — нужной ветки нет
Dolphinbet
14.01.15
✎
13:27
а почему нет «Microsoft Excel Application»??
Sh_Vlad
14.01.15
✎
13:31
(60) У нас разделение труда. Офис устанавливает другая служба. Не могу сказать. Есть «Office Licensing COM Server 14»
hhhh
14.01.15
✎
13:34
(59) ну, поменяйте в строке запуска сервера 1с системную запись на другого пользователя. Зачем вы системную туда вбухали? Можно было оставить пользователя, который там по умолчанию был: Usr1cv8
Sh_Vlad
14.01.15
✎
13:38
(62) Смысл менять в сервере 1с, если его надо прописать в настройках DCOM Екселя — некуда писать…
Dolphinbet
14.01.15
✎
13:56
(61) похоже из-за этого и не работает, «Microsoft Excel Application» должен быть в ветке «Настройка DCOM»
Sh_Vlad
14.01.15
✎
14:09
Как его туда запихнуть? Не вручную же…
На других серверах тоже нет. Есть например «Книга Microsoft Office Excel 2007»
Dolphinbet
14.01.15
✎
14:15
(65) Да, действительно, почему-то в серверных ОС этой ветки нет…
Dolphinbet
14.01.15
✎
15:01
может по коду приложения поискать {00024500-0000-0000-C000-000000000046} ?
Dolphinbet
28.01.15
✎
09:31
Ошибка при вызове конструктора (COMObject) по причине: Интерфейс не поддерживается
Ошибка происходит при попытке загрузить из Excel в 1С, когда код обработчика выполняется не на клиенте, а на сервере и в большинстве случаев текст ошибки говорит об отсутствии прав у пользователя сервера 1С.
Быстрый переход
- Особенности
- Устранение:
- Может оказаться, что «Microsoft Excel Application» отсутствует в списке, в данном случае
- Заключение
Особенности
Кодом со стороны 1С без изменения места исполнения не устраняется, использование других функций подключения Com также не дает положительных результатов.
Убедиться в причине ошибки возможно, если посмотреть логи системы.
Устранение:
- на сервере убиваем excel (taskkill /im excel.exe /f)
- открываем оснастку «Службы компонентов» (Пуск->Администрирование->Службы компонентов)
- в ней раскрываем ветку Службы компонентов->Компьютеры->Мой компьютер->Настройка DCOM
- справа в списке находим Microsoft Excel Application, открываем Свойства, вкладка Удостоверение, выбираем пользователя с администраторскими правами, ОК.
Может оказаться, что «Microsoft Excel Application» отсутствует в списке, в данном случае
- Запускаем REGEDIT
- Открываем ветку ComputerHKEY_CLASSES_ROOTAppIDEXCEL.EXE, если ее нет, то создаем
- Создаем в ней строковый параметр AppID = {00020812-0000-0000-C000-000000000046}
- Выполняем команду «mmc comexp.msc /32», которая делает то же что и DCOMCONFIG, но позволяет видеть 32 битные компоненты.
- После этого в Component Services должен появиться «Microsoft Excel Application»
Чтобы решить эту проблему, я включил пользователя USRV82, под которым запускается сервер приложений 1С Предприятия 8.3, в группу Distributed COM Users, но ошибка сразу не ушла, потребовалась перезагрузка.
Для правки использовалась оснастка Локальные пользователи и группы (lusrmgr.msc) — это инструмент, предназначенный для управления локальными пользователями и группами. Локальный пользователь или группа — это учетная запись, которой могут быть предоставлены разрешения и права на вашем компьютере.
Осложняло проблему то, что ошибка плавала: периодически выходила, либо в момент создания объекта, либо уже в момент вызова методов excel-application.
Так что нельзя однозначно сказать, что же решило проблему.
Заключение
В большинстве случаев уйти от дополнительной настройки операционной системы возможно, если использовать вызова Com-Объекта на клиенте. При правильной установке объектов они работают даже при различных по битности 1с и Excel, OS.
В моем же случае клиентские компьютеры работали на Ubuntu, поэтому вся обработка перенесена на сервер.
Бывает такое: вы прописываете для компонента пользователя и пароль.
Затем через некоторое время меняете пароль и компонент перестает работать: выходит такая же ошибка «Интерфейс не поддерживается». Следует просто вбить новый пароль.
Закон рекламы: родившись, брэнд нуждается в рекламе для своего существования.
-
13.11.2018, 09:23
#31
Пришел за помощью
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от avm3110
А сколько есть попыток угадать какую именно библиотеку ставил «2 раза»? Где ставил (на клиенте или на сервере)? под какими правами (пользователя или админа)?
Да и по синтаксису… У тебя в диагностике:
Что явно указывает на ошибку — «лишняя запятая». Параметр «Excel.Application» должен быть
первым
правильно:
ExcelApplication = Новый COMObject(«Excel.Application»);Теперь ошибка немного другая
{ВнешняяОбработка.Загрузка ВITIL.Форма.Форма.Форма(123)}: Ошибка при вызове конструктора (COMObject)
ExcelApplication = Новый COMObject(«Excel.Application»);
по причине:
-2147024891(0x80070005): Отказано в доступе.
-
13.11.2018, 12:13
#32
Гордость форума PRO
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от Akbar11
Регистрировал библиотеку на клиенте, под администратором. Той платформы которую запускаю
Продолжаю занудно. Какую библиотеку регистрируете? Какой командой? У вас база файловая или клиент-сервер?
Опишите поподробнее — как именно регистрируете «под администратором».
-
14.11.2018, 06:04
#33
Пришел за помощью
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от avm3110
Продолжаю занудно. Какую библиотеку регистрируете? Какой командой? У вас база файловая или клиент-сервер?
Опишите поподробнее — как именно регистрируете «под администратором».Регистрация библиотеки командой regsvr32 «C:Program Files1cv88.3.10.2466bincomcntr.dll»
Клиент — сервер
Процес, нажимаю вин + Q, пишу командная строка строка, контекстное меню запустить от имени админа, запускаю, Логин + пароль и регистрирую библиотеку
-
14.11.2018, 07:05
#34
Гордость форума PRO
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от Akbar11
Регистрация библиотеки командой regsvr32 «C:Program Files1cv88.3.10.2466bincomcntr.dll»
Клиент — сервер
Процес, нажимаю вин + Q, пишу командная строка строка, контекстное меню запустить от имени админа, запускаю, Логин + пароль и регистрирую библиотекуМдя-я-я… все как в анекдоте…
«Пьяный ходит вокруг фонаря ночью и о чем-то материться. Прохожий хочет помочь и участливо спрашивает в чем дело.
Да я ключи потерял и уже полчаса не могу найти — следует ответ.
прохожий оглядывает место под фонарем и удивляется. Да тут же ровный асфальт, сухо и отлично видно что ключей тут нет. Ты уверен что именно тут потерял?
Да нет.. потерял я в грязной луже, вон там в подворотне. Но там же очень темно искать и очень грязно и очень мокро — поэтому я ищу именно тут».Уважаемый… У Вас диагностика «не зарегистрирован класс Excel.Application». Ну и что же вы хотите добиться «упорством достойного лучшего применения» регистрируя библиотеку 1с предприятия????
-
Пользователь сказал cпасибо:
-
14.11.2018, 07:10
#35
Гордость форума PRO
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от Akbar11
Теперь ошибка немного другая
{ВнешняяОбработка.Загрузка ВITIL.Форма.Форма.Форма(123)}: Ошибка при вызове конструктора (COMObject)
ExcelApplication = Новый COMObject(«Excel.Application»);
по причине:
-2147024891(0x80070005): Отказано в доступе.А эта ошибка показывает, что пользователю под которым выполняется строка
ExcelApplication = Новый COMObject(«Excel.Application»);
нет прав на создание ком-объекта.У вас база клиент-серверная или файловая? Для файловой запустите 1с с правами администратора и попробуйте выполнить внешнюю обработку под админом с полными правами и правами администрирования.
-
14.11.2018, 08:14
#36
Пришел за помощью
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от avm3110
А эта ошибка показывает, что пользователю под которым выполняется строка
ExcelApplication = Новый COMObject(«Excel.Application»);
нет прав на создание ком-объекта.У вас база клиент-серверная или файловая? Для файловой запустите 1с с правами администратора и попробуйте выполнить внешнюю обработку под админом с полными правами и правами администрирования.
В файловой все работает, даже не под админимон
-
14.11.2018, 13:33
#37
Гордость форума PRO
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от Akbar11
В файловой все работает, даже не под админимон
Поднимите файловую на сервере и там попробуйте.
Если интерактивно в файловой будет работать, а в запущенном клиенте на сервере в клиент-сервере — нет. нужно смотреть права пользователя под которым работает 1С предприятие. А есть еще ряд настоек которые нужно будет проверять.
Пришлите вначале результаты этого тестирования
-
27.11.2018, 03:06
#38
Пришел за помощью
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от avm3110
Поднимите файловую на сервере и там попробуйте.
Если интерактивно в файловой будет работать, а в запущенном клиенте на сервере в клиент-сервере — нет. нужно смотреть права пользователя под которым работает 1С предприятие. А есть еще ряд настоек которые нужно будет проверять.
Пришлите вначале результаты этого тестирования
Здравствуйте. В файловой на сервере все работает
Последний раз редактировалось Akbar11; 27.11.2018 в 03:23.
-
27.11.2018, 03:26
#39
Пришел за помощью
Re: Ошибка при вызове конструктора (COMObject)
На сервере ошибка
{ВнешняяОбработка.Загрузка ВITIL.Форма.Форма.Форма(123)}: Ошибка при вызове конструктора (COMObject)
ExcelApplication = Новый COMObject(«Excel.Application»);
по причине:
-2147467262(0x80004002): Интерфейс не поддерживается
-
27.11.2018, 07:59
#40
Гордость форума PRO
Re: Ошибка при вызове конструктора (COMObject)
Сообщение от Akbar11
В файловой на сервере все работает
На сервере ошибкану е-е-е-е… еще раз.. выше уже писал… Если на одном и том же компе одна и та же база поднята в файловом режиме, а затем в клиент-серверном (когда и сервер и клиент это один и тот же ком). И при этом на файловом «все работает», а на клиент-сервере подобная ошибка — следовательно проблема в правах под которым работает база.
При файл серверном — это права пользователя под которым идет запуск базы, а на клиент сервере это права пользователя под которым крутиться сервер 1С предприятия.
Решение — смотреть и фиксить эти права. Например как описано тут: — http://buh.ruboard.ru/public/196323/
Похожие темы
-
Ответов: 1
Последнее сообщение: 08.06.2017, 00:12
-
Ответов: 9
Последнее сообщение: 16.04.2014, 12:50
-
Ответов: 0
Последнее сообщение: 27.02.2014, 22:04
-
Ответов: 2
Последнее сообщение: 12.08.2013, 13:34
-
Ответов: 1
Последнее сообщение: 27.06.2013, 19:33
Социальные закладки
Социальные закладки

Ваши права
- Вы не можете создавать новые темы
- Вы не можете отвечать в темах
- Вы не можете прикреплять вложения
- Вы не можете редактировать свои сообщения
- BB коды Вкл.
- Смайлы Вкл.
- [IMG] код Вкл.
- [VIDEO] код Вкл.
- HTML код Выкл.
Правила форума
После обновления платформы 1С на последнюю текущую версию столкнулся с ошибкой в обработке, которая работала еще до сегодняшнего дня.
Вызов осуществляется на сервере 1С:Предприятия, в управляемом приложении.
Эксель = Новый COMОбъект(«Excel.Application»);
При этом сервер приложения 1С 32х разрядный, хотя и стоит на Windows 64 битной версии.
Если запускать этот же метод на клиентской части, то помогает стандартное действие, выполненное с правами администратора:
Regsvr32 «C:Program Files (x86)1cv8(версия платформы)bincomcntr.dll»
Однако не в этом случае…
Поиск по интернету и «гугление» конечно помогает в большинстве случаев 🙂 однако вариантов было перепробовано несколько и ничего не помогло кроме следующего:
- Заходим на сервер приложений 1С под локальным админом
- Запускаем DCOMCNFG (Консоль настроек «Component Services»)
- Открываем ветку Console Root -> Component Services -> Computers -> My computer -> DCOM Config
- Ищем «Microsoft Excel Application»
- Если нашли, то переходим к пункту 4 (Настраиваем свойства DCOM компонента «Microsoft Excel Application»)
- Закрываем «Component Services»
- Настройка реестра
- Запускаем REGEDIT
- Открываем ветку ComputerHKEY_CLASSES_ROOTAppIDEXCEL.EXE, если ее нет, то создаем
- Создаем в ней строковый параметр AppID = {00020812-0000-0000-C000-000000000046}
- Выполняем команду «mmc comexp.msc /32», которая делает то же что и DCOMCONFIG, но позволяет видеть 32 битные компоненты.
- После этого в Component Services должен появиться «Microsoft Excel Application»
- Настраиваем свойства DCOM компонента «Microsoft Excel Application»
- Закладка «Security»
- «Launch and Activation Permissions» — Customize — Edit
- Добавляем пользователя, под которым запускается агент сервера 1С
- Назначем ему только следующие права (allow):
- Local Launch
- Local Activation
- «Access Permissions» — Customize — Edit
- Добавляем пользователя, под которым запускается агент сервера 1С
- Назначаем ему только следующие права (allow):
- Local Access
- «Launch and Activation Permissions» — Customize — Edit
- Закладка «Identity»
- Должно быть выбрано «The launching user»
- Закладка «Security»
- Системные папки
- Папка «C:WindowsSysWOW64configsystemprofileDesktop»
- Проверяем наличие папки , если нет -то создаем.
- Заходим в свойства этой папки.
- Закладка Security
- Добавляем, если нет, пользователя, под которым запускается агент сервера 1С
- Добавляем право «Read» и «Write»
- Папка «C:WindowsSystem32configsystemprofileDesktop»
- Проверяем наличие папки , если нет -то создаем.
- Заходим в свойства этой папки.
- Закладка Security
- Добавляем, если нет, пользователя, под которым запускается агент сервера 1С
- Добавляем право «Read» и «Write»
- Папка «C:WindowsSysWOW64configsystemprofileDesktop»
Источник информации © Инфостарт.
Содержание:
1. Почему может возникнуть ошибка при вызове конструктора (COM-объект 1С)?
2. С помощью чего можно исправить ошибку при вызове конструктора (COM-объект 1С)?
3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом
1. Почему может возникнуть ошибка при вызове конструктора (COM-объект 1С)?
Когда ты начинающий специалист 1С, то иногда приходится чувствовать себя шаманом с бубном, так как не знаешь причин ошибки и как её исправить тоже.
Сегодня мы разберем одну из ошибок, которые появляются при работе с базой, а именно ошибку при вызове конструктора (COM-объект 1С).
Ситуацию такую, мы можем наблюдать при загрузке с Excel при использовании (COM-объекта 1С), при обмене между базами. Ситуаций, когда возникает данное сообщение с возникшей проблемой довольно много при работе с программой.
Как правило, данная ошибка возникает из-за того, что при установке платформы1С не произошла автоматическая регистрация 64-х разрядной компоненты, которая отвечает за использование COM-соединения 1С 8.3. А почему это произошло, спросите? Все очень просто и в то же время сложно, если не знаешь, в чем все ядро проблемы. А причина в том, что те, у кого выдаются такие ошибки, используют 32(86) – разрядную операционную систему и ставят вместо платформы необходимой разрядности их системы, платформу 1С предназначенную для совсем другой системы.
2. С помощью чего можно исправить ошибку при вызове конструктора (COM-объект 1С)?
Исправить данную ошибку, довольно легко. Для этого необходимо всего лишь зарегистрировать библиотеку dll в реестре при помощи командной строки или программы PowerShell, в зависимости от того, что любите использовать, и команды regsvr32.
Для того чтобы выполнить команду, достаточно будет в строке написать такой текст команды «regsvr32 «C:Program Files1cv88.3.ХХ.ХХХХbincomcntr.dll»». Вместо «ХХ.ХХХХ» необходимо указать необходимый релиз платформы, библиотеку которой, необходимо зарегистрировать в реестре системы.
Если все выполнено правильно и регистрация произошла успешно, то должно выдать сообщение, как на скриншоте, об успешной регистрации библиотеки.
Администратор: Командная строка
3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом
Также есть некоторые особенности команды, которая регистрирует компоненты.
На данный момент я знаю только 4 параметра (которые при написании строки кода указываются перед регистрируемым dll-файлом):
· /u — параметр, отменяет регистрацию
· /i — параметр, который позволяет при необходимости, в зависимости от библиотеки.
· /n —параметр используется только для установки компоненты 1С, в основном пишется вместе с предыдущим (/I);
· /s – возможность отключить все сообщения при регистрации;
Существует, также, один немаловажный момент, что в зависимости от версии командной строки, иногда приходится прописывать путь к самой утилите.
Кстати, существуют специальные программы-инструменты, которые помогают регистрировать компоненты, без знания команд и утилит администрирования, зарегистрировать библиотеку и продолжить работать дальше.
Таких программ достаточно много и писать, какое-то одно название смысла нет.
Для того чтобы быстро и качественно решать такие проблемы, необходимо изучать разнообразные статьи, для повышения уровня знаний и квалификации.
Специалист компании «Кодерлайн»
Олег Мороз
val245
03.04.18 — 20:24
Здравствуйте
Стоит УТ 11. Клиент-серверный вариант. Загружаю данные из Excel. При попытке открыть файл конструктором
Ex=Новый ComОбъект(«Excel.Application»);
Work = Ex.workbooks.Open(СокрЛП(ПутьКФайлу));
Входит ошибка
{Обработка.ЗагрузкаНоменклатурыИзЭкзель.Форма.Форма.Форма(25)}: Ошибка при вызове конструктора (ComОбъект): -2147467262(0x80004002): No such interface supported
Обработку разрабатывал в фаловом варианте. В файловом варианте обработка проходит нормально. Excel на сервере установлен.
Кто знает, почему файл не хочет читаться в клиент-серверном варианте?
shuhard
1 — 03.04.18 — 20:27
(0)[Кто знает, почему] Все знают 100500 раз писалось про пути и учетные записи
Darych
2 — 03.04.18 — 20:28
права
val245
3 — 03.04.18 — 20:32
права в 1с или права учетных записей Windows?
Darych
4 — 03.04.18 — 20:32
вин
MaxS
5 — 03.04.18 — 20:33
Открывайте 1С-ом через Файл-Открыть
val245
6 — 03.04.18 — 20:34
(1) Ну я пока с такой проблемой не сталкивался
shuhard
7 — 03.04.18 — 20:34
(3) права учетной записи, от которой крутиться rphost
+ ну и конечно для загрузки из xls ставить на сервер эксель плохое решение, пару раз зависнет и сожрёт всю память
Cool_Profi
8 — 03.04.18 — 20:35
(7) Твой вариант решения?
tesseract
9 — 03.04.18 — 20:35
Почему просто в ТД не читать? Зачем Excel дергать?
val245
10 — 03.04.18 — 20:37
(5) Открывать 1С-ом что? обработку или Excel? Экзель открывается, правда, конечно, не читабельно..
Darych
11 — 03.04.18 — 20:37
(9) не всегда в ТД получается
val245
12 — 03.04.18 — 20:38
(9) ТД — это что?
piter3
13 — 03.04.18 — 20:38
Взять типовую загрузку из йокселя,загрузить,закрыть,забыть.
val245
14 — 03.04.18 — 20:38
табличный документ?
val245
15 — 03.04.18 — 20:39
ну так у пользователей данные в экзеле.. приходится загружать из экзель
tesseract
16 — 03.04.18 — 20:39
(14) Да он давно и Excel и ods нормально грузит.
piter3
17 — 03.04.18 — 20:39
shuhard
18 — 03.04.18 — 20:39
(8) adodb однозначно
shuhard
19 — 03.04.18 — 20:40
(16) многостраничные стал грузить совсем не давно
Darych
20 — 03.04.18 — 20:41
(18) а у него думаешь не адо?
Cool_Profi
21 — 03.04.18 — 20:41
(18) И тут мы вам покажем, как вы думаете, что?
Правильно… Вот эту ссылку
https://www.forum.mista.ru/topic.php?id=815766
shuhard
22 — 03.04.18 — 20:42
(20) ты это о чем ?
ComОбъект(«Excel.Application»);
shuhard
23 — 03.04.18 — 20:43
(21) ты неудачник и что ?
Cool_Profi
24 — 03.04.18 — 20:44
(23) А с какого перепою я неудачник? Можешь обосновать внятно?
Или у тебя перепой?
shuhard
25 — 03.04.18 — 20:47
(24) хвостик отрасти для объяснений
val245
26 — 03.04.18 — 20:48
а с чем эта ошибка связана? почему в файловом варианте читает, а в клиент-серверном читать не хочет?
shuhard
27 — 03.04.18 — 20:49
(26) пипец
ты чё, ответы не читаешь ?
ДенисЧ
28 — 03.04.18 — 20:49
(25) Так лучше видно?
tesseract
29 — 03.04.18 — 20:52
(26) Сервер и клиент находятся в разных местах. Если на одном — у них разные пользователи. См НачатьПомещениеФайла для начала.
shuhard
30 — 03.04.18 — 20:53
(28) =)
Darych
31 — 03.04.18 — 20:54
все ж написано: «No such interface supported
«
val245
32 — 03.04.18 — 20:55
сейчас пользователи подключаются через rdp. Все действия происходят на сервере..
shuhard
33 — 03.04.18 — 20:57
val245
34 — 03.04.18 — 21:01
ок. спасибо. Будем разбираться…
Вопрос При работе с Excel из 1С возникает сообщение: «Ошибка при вызове конструктора (COMОбъект): Интерфейс не поддерживается». Что делать?
Ответ Подробнее:
При использовании:
Excel = Новый COMОбъект("Excel.Application"); WB = Excel.Workbooks.Open(ИмяФайла);
Выдает ошибку – Ошибка при вызове конструктора (COMОбъект): Интерфейс не поддерживается.
Или другой метод:
Объект = ПолучитьCOMОбъект(ИмяФайла);
— сообщение: «Ошибка при вызове метода контекста (ПолучитьCOMОбъект): Ошибка получения объекта COM: Класс не зарегистрирован»
или
Объект = ПолучитьCOMОбъект(ИмяФайла, "Excel.Application");
— сообщение: «Ошибка при вызове метода контекста (ПолучитьCOMОбъект): Ошибка получения объекта COM: Сервер RPC недоступен»
Причин всех этих ошибок может быть несколько.
У службы «Запуск серверных процессов DCOM» тип запуска должен быть «Авто».
Кроме того, если служба «Агент сервера 1С:Предприятия 8.2» запускается от имени специального пользователя, то у него должны быть права на запуск компоненты «Приложение Microsoft Excel»
Служба «Агент сервера 1С:Предприятия 8.2» не должна запускаться от имени пользователя с ограниченными правами, у него должны быть права на запуск компоненты «Приложение Microsoft Excel».
Другая возможная причина: 1С предприятие установлено в 64-битном варианте, а Excel — в 32-битном. Может помочь установка 1С в 32-битном варианте (это может быть проще, чем найти 64-битный Excel)
У службы «Запуск серверных процессов DCOM» тип запуска необходимо установить в «Авто». После чего желательно перезагрузить компьютер.
Ну и как вариант, быть может поврежден установленный пакет MS Office. Необходимо попробовать переустановить его.
Next Post
-
v8
-
Программисту 1C
Пт Май 14 , 2010
Вопрос Как в запросе использовать «СокрЛП», «Лев», «Прав», т.е. как отсечь нужное количество символов? Ответ Использовать конструкцию «ВЫРАЗИТЬ»: … ГДЕ (ВЫРАЗИТЬ(усЕдиницыХранения.Владелец.Наименование КАК СТРОКА(4))) «Груз» |ГДЕ | (ВЫРАЗИТЬ(усЕдиницыХранения.Владелец.Наименование КАК СТРОКА(4))) &Груз … Запрос.УстановитьПараметр(«Груз»,»Груз»);
Breaking News
В этой статье речь пойдет об ошибках в COM-соединениях. Один из вариантов ошибки –
это «Ошибка при вызове конструктора (COMObject):
-2147221164(0x80040154): Класс не зарегистрирован…». Бывают и другие варианты
сообщений, все я перечислять не буду, в большинстве случаев — это означает, что
при установке платформы компонента comcntr.dll не смогла зарегистрироваться
автоматически. COM — соединения используются в обменах между конфигурациями.
У меня в готовых решениях есть обработка
загрузки сотрудников из ЗУП, в которой тоже используется COM — соединение и у
пользователей тоже может появиться ошибка. В случае с моей обработкой, при
проверке соединения, может появиться сообщение, что невозможно установить
соединение с конфигурацией ЗУП. Это
может произойти, если Вы неправильно указали настройки подключения, неправильно
настроены права пользователя, через которого Вы подключаетесь или чаще всего – проблема
в компоненте comcntr.dll, которая при смене платформы автоматически не
зарегистрировалась. Вот и рассмотрим, как ее зарегистрировать вручную.
Первое что нужно сделать, это запустить
командную строку от имени администратора.
В командной строке Windows набираете cmd, в
писке выбора появится программа с таким названием, устанавливаете курсор на эту
программу и выбираете из контекстного меню «Запуск под администратором» (см.
картинку ниже).
Затем ввести команду (можно двумя способами):
1.
regsvr32
«C:Program Files (x86)1cv8[версия платформы]bincomcntr.dll»
2.
C:Program
Files (x86)1cv8[версия платформы]bin>regsvr32 comcntr.dll
Прежде чем ввести эти команды нужно
переместиться по каталогам. Допустим, при запуске командной строки появляется
совсем другой каталог, пример можно увидеть на картинке ниже.
Для смены каталога нужно написать cd, после которого установить пробел, а
затем указать тот путь, который нам нужен, например C:Program Files (x86)1cv8[версия платформы]bin, затем после указания пути к каталогу нажимаете Enter. Смотрите пример смены каталога на
картинке ниже.
Вот теперь
рядом с каталогом можно ввести regsvr32 comcntr.dll, нажать Enter и
зарегистрировать компоненту (смотрите пример на картинке ниже).
Если все
сделали правильно, то получите сообщение (см. картинку ниже).
Если компоненту не удалось
зарегистрировать, проверьте как вы запустили командную строку, возможно, что
забыли запустить от имени администратора. Если все в порядке, то нужно отключить
службу агента сервера 1С:Предприятия и все программы, использующие эту DLL.
После сообщения об успешной регистрации,
можно вновь запустить обмен или обработку, с которой у вас возникли проблемы.
Здравствуйте. Подскажите, никто не сталкивался с такой проблемой?
Если запускать этот код из внешней обработки , то всё нормально, но как только я разместил код в общий модуль (сервер, привилегированный, вызов сервера) и подцепил рег. задание, то вылетает ошибка:
{ОбщийМодуль.DC_СлужебныйПривелегированный.Модуль(9873)}: Ошибка при вызове конструктора (COMОбъект) ExcelApp = Новый COMОбъект("Excel.Application"); по причине: -2147024891(0x80070005): Отказано в доступе.Решение:
1. Администрирование - Службы компонентов – Компьютеры – Мой компьютер – Приложения COM+ - Создать приложение – Создать новое приложение – вводим имя «V82.COMConnector»(переключатель «Серверное приложение») – Указанный пользователь (Администратор)
2. В появившейся ветке V82COMConnector – подветка Компоненты – создание нового компонента – Установка новых компонентов - <каталог 1С>bincomcntr.dll
3. Правой кнопкой по ветке V82COMConnector – Свойства – Безопасность – Снял галку «Принудительная проверка доступа для приложений» - Поставил галку «Применить политику программных ограничений» - Уровень ограничений «Неограниченный»Проблема была именно с разрядностью.
Ошибка при вызове конструктора (COMObject) по причине: Интерфейс не поддерживается
Ошибка происходит при попытке загрузить из Excel в 1С, когда код обработчика выполняется не на клиенте, а на сервере и в большинстве случаев текст ошибки говорит об отсутствии прав у пользователя сервера 1С.
Быстрый переход
- Особенности
- Устранение:
- Может оказаться, что «Microsoft Excel Application» отсутствует в списке, в данном случае
- Заключение
Особенности
Кодом со стороны 1С без изменения места исполнения не устраняется, использование других функций подключения Com также не дает положительных результатов.
Убедиться в причине ошибки возможно, если посмотреть логи системы.
Устранение:
- на сервере убиваем excel (taskkill /im excel.exe /f)
- открываем оснастку «Службы компонентов» (Пуск->Администрирование->Службы компонентов)
- в ней раскрываем ветку Службы компонентов->Компьютеры->Мой компьютер->Настройка DCOM
- справа в списке находим Microsoft Excel Application, открываем Свойства, вкладка Удостоверение, выбираем пользователя с администраторскими правами, ОК.
Может оказаться, что «Microsoft Excel Application» отсутствует в списке, в данном случае
- Запускаем REGEDIT
- Открываем ветку ComputerHKEY_CLASSES_ROOTAppIDEXCEL.EXE, если ее нет, то создаем
- Создаем в ней строковый параметр AppID = {00020812-0000-0000-C000-000000000046}
- Выполняем команду «mmc comexp.msc /32», которая делает то же что и DCOMCONFIG, но позволяет видеть 32 битные компоненты.
- После этого в Component Services должен появиться «Microsoft Excel Application»
Чтобы решить эту проблему, я включил пользователя USRV82, под которым запускается сервер приложений 1С Предприятия 8.3, в группу Distributed COM Users, но ошибка сразу не ушла, потребовалась перезагрузка.
Для правки использовалась оснастка Локальные пользователи и группы (lusrmgr.msc) — это инструмент, предназначенный для управления локальными пользователями и группами. Локальный пользователь или группа — это учетная запись, которой могут быть предоставлены разрешения и права на вашем компьютере.
Осложняло проблему то, что ошибка плавала: периодически выходила, либо в момент создания объекта, либо уже в момент вызова методов excel-application.
Так что нельзя однозначно сказать, что же решило проблему.
Заключение
В большинстве случаев уйти от дополнительной настройки операционной системы возможно, если использовать вызова Com-Объекта на клиенте. При правильной установке объектов они работают даже при различных по битности 1с и Excel, OS.
В моем же случае клиентские компьютеры работали на Ubuntu, поэтому вся обработка перенесена на сервер.
Бывает такое: вы прописываете для компонента пользователя и пароль.
Затем через некоторое время меняете пароль и компонент перестает работать: выходит такая же ошибка «Интерфейс не поддерживается». Следует просто вбить новый пароль.
Закон рекламы: родившись, брэнд нуждается в рекламе для своего существования.
Содержание:
1. Почему может возникнуть ошибка при вызове конструктора (COM-объект 1С)?
2. С помощью чего можно исправить ошибку при вызове конструктора (COM-объект 1С)?
3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом
1. Почему может возникнуть ошибка при вызове конструктора (COM-объект 1С)?
Когда ты начинающий специалист 1С, то иногда приходится чувствовать себя шаманом с бубном, так как не знаешь причин ошибки и как её исправить тоже.
Сегодня мы разберем одну из ошибок, которые появляются при работе с базой, а именно ошибку при вызове конструктора (COM-объект 1С).
Ситуацию такую, мы можем наблюдать при загрузке с Excel при использовании (COM-объекта 1С), при обмене между базами. Ситуаций, когда возникает данное сообщение с возникшей проблемой довольно много при работе с программой.
Как правило, данная ошибка возникает из-за того, что при установке платформы1С не произошла автоматическая регистрация 64-х разрядной компоненты, которая отвечает за использование COM-соединения 1С 8.3. А почему это произошло, спросите? Все очень просто и в то же время сложно, если не знаешь, в чем все ядро проблемы. А причина в том, что те, у кого выдаются такие ошибки, используют 32(86) – разрядную операционную систему и ставят вместо платформы необходимой разрядности их системы, платформу 1С предназначенную для совсем другой системы.
2. С помощью чего можно исправить ошибку при вызове конструктора (COM-объект 1С)?
Исправить данную ошибку, довольно легко. Для этого необходимо всего лишь зарегистрировать библиотеку dll в реестре при помощи командной строки или программы PowerShell, в зависимости от того, что любите использовать, и команды regsvr32.
Для того чтобы выполнить команду, достаточно будет в строке написать такой текст команды «regsvr32 «C:Program Files1cv88.3.ХХ.ХХХХbincomcntr.dll»». Вместо «ХХ.ХХХХ» необходимо указать необходимый релиз платформы, библиотеку которой, необходимо зарегистрировать в реестре системы.
Если все выполнено правильно и регистрация произошла успешно, то должно выдать сообщение, как на скриншоте, об успешной регистрации библиотеки.
Администратор: Командная строка
3. Параметры при вызове конструктора (COM-объект 1С), которые регистрируют компоненты строки кода перед регистрируемым dll-файлом
Также есть некоторые особенности команды, которая регистрирует компоненты.
На данный момент я знаю только 4 параметра (которые при написании строки кода указываются перед регистрируемым dll-файлом):
· /u — параметр, отменяет регистрацию
· /i — параметр, который позволяет при необходимости, в зависимости от библиотеки.
· /n —параметр используется только для установки компоненты 1С, в основном пишется вместе с предыдущим (/I);
· /s – возможность отключить все сообщения при регистрации;
Существует, также, один немаловажный момент, что в зависимости от версии командной строки, иногда приходится прописывать путь к самой утилите.
Кстати, существуют специальные программы-инструменты, которые помогают регистрировать компоненты, без знания команд и утилит администрирования, зарегистрировать библиотеку и продолжить работать дальше.
Таких программ достаточно много и писать, какое-то одно название смысла нет.
Для того чтобы быстро и качественно решать такие проблемы, необходимо изучать разнообразные статьи, для повышения уровня знаний и квалификации.
Специалист компании «Кодерлайн»
Олег Мороз
val245
03.04.18 — 20:24
Здравствуйте
Стоит УТ 11. Клиент-серверный вариант. Загружаю данные из Excel. При попытке открыть файл конструктором
Ex=Новый ComОбъект(«Excel.Application»);
Work = Ex.workbooks.Open(СокрЛП(ПутьКФайлу));
Входит ошибка
{Обработка.ЗагрузкаНоменклатурыИзЭкзель.Форма.Форма.Форма(25)}: Ошибка при вызове конструктора (ComОбъект): -2147467262(0x80004002): No such interface supported
Обработку разрабатывал в фаловом варианте. В файловом варианте обработка проходит нормально. Excel на сервере установлен.
Кто знает, почему файл не хочет читаться в клиент-серверном варианте?
shuhard
1 — 03.04.18 — 20:27
(0)[Кто знает, почему] Все знают 100500 раз писалось про пути и учетные записи
Darych
2 — 03.04.18 — 20:28
права
val245
3 — 03.04.18 — 20:32
права в 1с или права учетных записей Windows?
Darych
4 — 03.04.18 — 20:32
вин
MaxS
5 — 03.04.18 — 20:33
Открывайте 1С-ом через Файл-Открыть
val245
6 — 03.04.18 — 20:34
(1) Ну я пока с такой проблемой не сталкивался
shuhard
7 — 03.04.18 — 20:34
(3) права учетной записи, от которой крутиться rphost
+ ну и конечно для загрузки из xls ставить на сервер эксель плохое решение, пару раз зависнет и сожрёт всю память
Cool_Profi
8 — 03.04.18 — 20:35
(7) Твой вариант решения?
tesseract
9 — 03.04.18 — 20:35
Почему просто в ТД не читать? Зачем Excel дергать?
val245
10 — 03.04.18 — 20:37
(5) Открывать 1С-ом что? обработку или Excel? Экзель открывается, правда, конечно, не читабельно..
Darych
11 — 03.04.18 — 20:37
(9) не всегда в ТД получается
val245
12 — 03.04.18 — 20:38
(9) ТД — это что?
piter3
13 — 03.04.18 — 20:38
Взять типовую загрузку из йокселя,загрузить,закрыть,забыть.
val245
14 — 03.04.18 — 20:38
табличный документ?
val245
15 — 03.04.18 — 20:39
ну так у пользователей данные в экзеле.. приходится загружать из экзель
tesseract
16 — 03.04.18 — 20:39
(14) Да он давно и Excel и ods нормально грузит.
piter3
17 — 03.04.18 — 20:39
shuhard
18 — 03.04.18 — 20:39
(8) adodb однозначно
shuhard
19 — 03.04.18 — 20:40
(16) многостраничные стал грузить совсем не давно
Darych
20 — 03.04.18 — 20:41
(18) а у него думаешь не адо?
Cool_Profi
21 — 03.04.18 — 20:41
(18) И тут мы вам покажем, как вы думаете, что?
Правильно… Вот эту ссылку
https://www.forum.mista.ru/topic.php?id=815766
shuhard
22 — 03.04.18 — 20:42
(20) ты это о чем ?
ComОбъект(«Excel.Application»);
shuhard
23 — 03.04.18 — 20:43
(21) ты неудачник и что ?
Cool_Profi
24 — 03.04.18 — 20:44
(23) А с какого перепою я неудачник? Можешь обосновать внятно?
Или у тебя перепой?
shuhard
25 — 03.04.18 — 20:47
(24) хвостик отрасти для объяснений
val245
26 — 03.04.18 — 20:48
а с чем эта ошибка связана? почему в файловом варианте читает, а в клиент-серверном читать не хочет?
shuhard
27 — 03.04.18 — 20:49
(26) пипец
ты чё, ответы не читаешь ?
ДенисЧ
28 — 03.04.18 — 20:49
(25) Так лучше видно?
tesseract
29 — 03.04.18 — 20:52
(26) Сервер и клиент находятся в разных местах. Если на одном — у них разные пользователи. См НачатьПомещениеФайла для начала.
shuhard
30 — 03.04.18 — 20:53
(28) =)
Darych
31 — 03.04.18 — 20:54
все ж написано: «No such interface supported
«
val245
32 — 03.04.18 — 20:55
сейчас пользователи подключаются через rdp. Все действия происходят на сервере..
shuhard
33 — 03.04.18 — 20:57
val245
34 — 03.04.18 — 21:01
ок. спасибо. Будем разбираться…
Здравствуйте. Подскажите, никто не сталкивался с такой проблемой?
Если запускать этот код из внешней обработки , то всё нормально, но как только я разместил код в общий модуль (сервер, привилегированный, вызов сервера) и подцепил рег. задание, то вылетает ошибка:
{ОбщийМодуль.DC_СлужебныйПривелегированный.Модуль(9873)}: Ошибка при вызове конструктора (COMОбъект) ExcelApp = Новый COMОбъект("Excel.Application"); по причине: -2147024891(0x80070005): Отказано в доступе.Решение:
1. Администрирование - Службы компонентов – Компьютеры – Мой компьютер – Приложения COM+ - Создать приложение – Создать новое приложение – вводим имя «V82.COMConnector»(переключатель «Серверное приложение») – Указанный пользователь (Администратор)
2. В появившейся ветке V82COMConnector – подветка Компоненты – создание нового компонента – Установка новых компонентов - <каталог 1С>\bin\comcntr.dll
3. Правой кнопкой по ветке V82COMConnector – Свойства – Безопасность – Снял галку «Принудительная проверка доступа для приложений» - Поставил галку «Применить политику программных ограничений» - Уровень ограничений «Неограниченный»Проблема была именно с разрядностью.