Ошибка при вызове конструктора (COMObject) по причине: Интерфейс не поддерживается
Ошибка происходит при попытке загрузить из Excel в 1С, когда код обработчика выполняется не на клиенте, а на сервере и в большинстве случаев текст ошибки говорит об отсутствии прав у пользователя сервера 1С.
Быстрый переход
- Особенности
- Устранение:
- Может оказаться, что «Microsoft Excel Application» отсутствует в списке, в данном случае
- Заключение
Особенности
Кодом со стороны 1С без изменения места исполнения не устраняется, использование других функций подключения Com также не дает положительных результатов.
Убедиться в причине ошибки возможно, если посмотреть логи системы.
Устранение:
- на сервере убиваем excel (taskkill /im excel.exe /f)
- открываем оснастку «Службы компонентов» (Пуск->Администрирование->Службы компонентов)
- в ней раскрываем ветку Службы компонентов->Компьютеры->Мой компьютер->Настройка DCOM
- справа в списке находим Microsoft Excel Application, открываем Свойства, вкладка Удостоверение, выбираем пользователя с администраторскими правами, ОК.
Может оказаться, что «Microsoft Excel Application» отсутствует в списке, в данном случае
- Запускаем 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»
Чтобы решить эту проблему, я включил пользователя USRV82, под которым запускается сервер приложений 1С Предприятия 8.3, в группу Distributed COM Users, но ошибка сразу не ушла, потребовалась перезагрузка.
Для правки использовалась оснастка Локальные пользователи и группы (lusrmgr.msc) — это инструмент, предназначенный для управления локальными пользователями и группами. Локальный пользователь или группа — это учетная запись, которой могут быть предоставлены разрешения и права на вашем компьютере.
Осложняло проблему то, что ошибка плавала: периодически выходила, либо в момент создания объекта, либо уже в момент вызова методов excel-application.
Так что нельзя однозначно сказать, что же решило проблему.
Заключение
В большинстве случаев уйти от дополнительной настройки операционной системы возможно, если использовать вызова Com-Объекта на клиенте. При правильной установке объектов они работают даже при различных по битности 1с и Excel, OS.
В моем же случае клиентские компьютеры работали на Ubuntu, поэтому вся обработка перенесена на сервер.
Бывает такое: вы прописываете для компонента пользователя и пароль.
Затем через некоторое время меняете пароль и компонент перестает работать: выходит такая же ошибка «Интерфейс не поддерживается». Следует просто вбить новый пароль.
Реклама магазина самообслуживания: треска, стоящая в очереди за cобственной печенью.
Платформа: 1С:Предприятие 8.3 (8.3.6.2100)
Конфигурация:Риэлтор. Управление продажами недвижимости для «1С:Управление торговлей 8», редакция 11.1 (11.1.10.145/2.7.3.42)
Проблема:Файловая база размещена на сервере, опубликована на веб-сервере. Пользователи подключаются через тонкого клиента к веб-серверу. При печати шаблона WORD база выдает ошибку -2147467262(0х80004002) Интерфейс не поддерживается.
Сложности в процессе решения:
Согласно инструкции разработчиков, по словам ошибки «интерфейс не поддерживается» проделали следующее:
1. Пользователю USR1CV82, от имени которого запускается сервер 1С, дать права на запуск DCOM MicrosoftWord и DCOM Microsoft Excel (при необходимости).
Для этого нужно:
1.1. Запустить службу компонентов. Из командной строки набрать
mmccomexp.msc
и найти компоненту Word или Excel. Пример для Word представлен на рисунке ниже:
При запуске службы компонентов на 64-х разрядной машине, 32-х разрядные компоненты могут не отображаться, тогда запуск нужно осуществить через команду:
C:WINDOWSSysWOW64>mmc comexp.msc /32
1.2. Открыть свойства компоненты и перейти на закладку Безопасность.
1.3. В разделе Разрешения на запуск выбрать пункт Настроить и нажать кнопку Изменить. Добавить пользователя USR1CV82.
Не помогло, база выдавала ошибку: Данная команда недоступна, так как не открыт ни один документ.
В ходе работ закончилась лицензия на MS Office, и в конфигурации после создания COM-объекта «Word.Application» на каждом шаге в отладке ОС запускает процесс завершения установки и активации MS Office. Клиент купил лицензию для сервера на MS Office.
После установки лицензий вернулась ошибка -2147467262(0х80004002) Интерфейс не поддерживается.
По словам разработчиков, перевод обработки Word на клиента не решит проблему. Судя по предоставленным нами логам — ошибка возникает в режиме веб-клиента. В этом режиме программная обработка Word на клиенте не возможна, только серверная обработка.
Но для работы базы необходимо было решить данную проблему. Мы вернули все изменения, которые сделали по инструкции разработчика. Долго прорабатывали доступы к папкам временного хранилища для пользователей извне. Создали еще одного администратора без пользовательских настроек, для него заново настраивали IIS.
Решение:
Настроили работу сервера через Apache. Создали папку, в которой находятся редактируемые шаблоны Word, дали общий доступ к этой папке, для пользователя IUSR и группы пользователей IIS_users.
На Windows Server 2012 (64 разрядности) установлен Word 2013 (32 разрядности), а у пользователей установлен Adobe Reader. Шаблон договора заполняется в 1С на сервере и конвертируется в PDF, сохраняется во временную папку на сервере.
Мы переписали обработку, чтобы документ сохранился в формат PDF (по требованию клиента для запрета редактирования, изменения документа) и сохранялся во временное хранилище 1С. Из хранилища документ/файл передается на указанный нами путь (во временные папки у клиента), как для тонкого клиента, так и для веб-клиента. Открывается файл именно из этой временной папки. Ниже пример кода, который мы дописали для передачи файла с сервера на клиент.
&НаКлиенте
Попытка
ЗапуститьПриложение(ПолноеИмяФайлаНаКлиенте);
Исключение
Адрес = УПН_ОбщиеПроцедуры.ПолучитьФайл(ПолноеИмяФайлаНаКлиенте);
Описание = Новый ОписаниеПередаваемогоФайла(«C:doc» + ДанныеФайла.ИмяФайла,Адрес);
МассивОписаний=Новый Массив;
МассивОписаний.Добавить(Описание);
ПолучитьФайлы(МассивОписаний,,,Ложь);
ЗапуститьПриложение(«C:doc» + ДанныеФайла.ИмяФайла);
КонецПопытки;
&НаСервере
Функция ПолучитьФайл(ПолноеИмяФайлаНаКлиенте) Экспорт
Двоичное = Новый ДвоичныеДанные(ПолноеИмяФайлаНаКлиенте);
Адрес = ПоместитьВоВременноеХранилище(Двоичное);
Возврат Адрес
КонецФункции
В настроках Панель управления, далее путь: Администрирование->Управление групповой политикой->Домены – выбираем наш сервер и во вкладке «Делегирование» добавляем группу IIS_users и пользователя IUSR (через которого подключаются внешние пользователи).
В веб-клиенте после отправки документа на печать браузе попросит установить расширение. Нужно установить, и все заработает:
Предпочтительнее использовать Internet Explorer (IE) не ниже 8 версии. При использовании Google Chrome (гугл хром) возникает ошибка: Использование модальных окон в данном режиме запрещено.
Если Internet Explorer не запускает документ на печать, можно принудительно запустить браузер от имени администратора:
В тонком клиенте сразу открывается заполненный шаблон (на примере ниже стерты данные клиента). Форма открывается в формате PDF по требованию клиента, чтобы пользователь не мог редактировать документ перед печатью.
Автор mobic, 16 мар 2023, 09:53
0 Пользователей и 2 гостей просматривают эту тему.
{ВнешняяОбработка.загрузка_из_XLS.Форма.Форма.Форма(94)}: Ошибка при вызове конструктора (COMОбъект): -2147467262(0x80004002): Интерфейс не поддерживается
Уже видел и читал аналогичные темы на форуме, делал всё как писали, дал все права на пользователей, и на USRS1c8, и все равно ничего.
Дело такое, открываю базу локально, все работает, отладка читает excel.
Недавно перенесли базу на Postgres и после этого все отладки связанные с excel, word и прочим, просто престали работать. Уже перечитал кучу тем, ничего пока что не помогло.
mobic, как вариант, не используйте СОМ объект, а читайте данные из Екселя самой 1С
ТабличныйДокумент.Прочитать(ИмяФайла);
если помогло нажмите: Спасибо!
LexaK, Это как? А то человек который администрировал 1с, благополучно свалил, а я практически без опыта работы
Цитата: mobic от 16 мар 2023, 10:25а я практически без опыта работы
— тогда никак!
(нужен опыт)
или еще как вариант, здесь, на сайте, есть Фрилансеры, попробуйте обратиться к ним!
если помогло нажмите: Спасибо!
так а на сервере у вас Эксель установлен?
и проверьте где у вас КОм объект создаетс я — на клиенте или на сервере, эксель должен быть установлен там где он создается
Если кому поможет, решение оказалось максимально банальным. во Вкладке Свойства / Удостоверения / поставил галочку на «Запускающий пользователь» в службе компонентов, и все заработало.
- 1 пользователь сказал спасибо!
Платформа: 1С:Предприятие 8.3 (8.3.6.2100)
Конфигурация:Риэлтор. Управление продажами недвижимости для «1С:Управление торговлей 8», редакция 11.1 (11.1.10.145/2.7.3.42)
Проблема:Файловая база размещена на сервере, опубликована на веб-сервере. Пользователи подключаются через тонкого клиента к веб-серверу. При печати шаблона WORD база выдает ошибку -2147467262(0х80004002) Интерфейс не поддерживается.
Сложности в процессе решения:
Согласно инструкции разработчиков, по словам ошибки «интерфейс не поддерживается» проделали следующее:
1. Пользователю USR1CV82, от имени которого запускается сервер 1С, дать права на запуск DCOM MicrosoftWord и DCOM Microsoft Excel (при необходимости).
Для этого нужно:
1.1. Запустить службу компонентов. Из командной строки набрать
mmccomexp.msc
и найти компоненту Word или Excel. Пример для Word представлен на рисунке ниже:
При запуске службы компонентов на 64-х разрядной машине, 32-х разрядные компоненты могут не отображаться, тогда запуск нужно осуществить через команду:
C:WINDOWSSysWOW64>mmc comexp.msc /32
1.2. Открыть свойства компоненты и перейти на закладку Безопасность.
1.3. В разделе Разрешения на запуск выбрать пункт Настроить и нажать кнопку Изменить. Добавить пользователя USR1CV82.
Не помогло, база выдавала ошибку: Данная команда недоступна, так как не открыт ни один документ.
В ходе работ закончилась лицензия на MS Office, и в конфигурации после создания COM-объекта «Word.Application» на каждом шаге в отладке ОС запускает процесс завершения установки и активации MS Office. Клиент купил лицензию для сервера на MS Office.
После установки лицензий вернулась ошибка -2147467262(0х80004002) Интерфейс не поддерживается.
По словам разработчиков, перевод обработки Word на клиента не решит проблему. Судя по предоставленным нами логам — ошибка возникает в режиме веб-клиента. В этом режиме программная обработка Word на клиенте не возможна, только серверная обработка.
Но для работы базы необходимо было решить данную проблему. Мы вернули все изменения, которые сделали по инструкции разработчика. Долго прорабатывали доступы к папкам временного хранилища для пользователей извне. Создали еще одного администратора без пользовательских настроек, для него заново настраивали IIS.
Решение:
Настроили работу сервера через Apache. Создали папку, в которой находятся редактируемые шаблоны Word, дали общий доступ к этой папке, для пользователя IUSR и группы пользователей IIS_users.
На Windows Server 2012 (64 разрядности) установлен Word 2013 (32 разрядности), а у пользователей установлен Adobe Reader. Шаблон договора заполняется в 1С на сервере и конвертируется в PDF, сохраняется во временную папку на сервере.
Мы переписали обработку, чтобы документ сохранился в формат PDF (по требованию клиента для запрета редактирования, изменения документа) и сохранялся во временное хранилище 1С. Из хранилища документ/файл передается на указанный нами путь (во временные папки у клиента), как для тонкого клиента, так и для веб-клиента. Открывается файл именно из этой временной папки. Ниже пример кода, который мы дописали для передачи файла с сервера на клиент.
&НаКлиенте
Попытка
ЗапуститьПриложение(ПолноеИмяФайлаНаКлиенте);
Исключение
Адрес = УПН_ОбщиеПроцедуры.ПолучитьФайл(ПолноеИмяФайлаНаКлиенте);
Описание = Новый ОписаниеПередаваемогоФайла(«C:doc» + ДанныеФайла.ИмяФайла,Адрес);
МассивОписаний=Новый Массив;
МассивОписаний.Добавить(Описание);
ПолучитьФайлы(МассивОписаний,,,Ложь);
ЗапуститьПриложение(«C:doc» + ДанныеФайла.ИмяФайла);
КонецПопытки;
&НаСервере
Функция ПолучитьФайл(ПолноеИмяФайлаНаКлиенте) Экспорт
Двоичное = Новый ДвоичныеДанные(ПолноеИмяФайлаНаКлиенте);
Адрес = ПоместитьВоВременноеХранилище(Двоичное);
Возврат Адрес
КонецФункции
В настроках Панель управления, далее путь: Администрирование->Управление групповой политикой->Домены – выбираем наш сервер и во вкладке «Делегирование» добавляем группу IIS_users и пользователя IUSR (через которого подключаются внешние пользователи).
В веб-клиенте после отправки документа на печать браузе попросит установить расширение. Нужно установить, и все заработает:
Предпочтительнее использовать Internet Explorer (IE) не ниже 8 версии. При использовании Google Chrome (гугл хром) возникает ошибка: Использование модальных окон в данном режиме запрещено.
Если Internet Explorer не запускает документ на печать, можно принудительно запустить браузер от имени администратора:
В тонком клиенте сразу открывается заполненный шаблон (на примере ниже стерты данные клиента). Форма открывается в формате PDF по требованию клиента, чтобы пользователь не мог редактировать документ перед печатью.
При установке программ, запуск которых доступен из контекстного меню Windows, происходит ошибка — 2147467262 Интерфейс не поддерживается. Как исправить её, вы сможете узнать в этой статье. Такая проблема может появляться на всех версиях ОС Windows. Но чаще она возникает на Windows 7. Будут использованы разные методы устранения. Если не подойдет один — используйте другой.
Содержание
- Причины возникновения ошибки в Windows
- Ошибка 2147467262 в Windows — что делать
- Восстановление системных файлов
- Утилита Windows Fix
- Другие способы решения ошибки
Причины возникновения ошибки в Windows
Причиной ошибки могут быть сбои системных файлов при установке программного обеспечения. При этом нарушения могли быть уже в системе до установки программ. Появляется сообщение, когда пользователь пытается воспользоваться контекстным меню (нажимая правую кнопку мыши (ПКМ)). Эти симптомы ОС могут говорить о наличии вирусов в компьютере, которые часто нарушают системные файлы.
Читайте также: эта система не удовлетворяет минимальным требованиям Intel HD Graphics.
Ошибка 2147467262 в Windows — что делать
Для начала попробуйте простые действия, которые могут решить большинство временных сбоев в системе. Прежде всего перезагрузите компьютер и попробуйте вызвать ошибку отсутствия поддержки интерфейса. Следующий шаг может помочь определить, с какой программой связано появление ошибки. Нам нужно попытаться загрузиться в «чистую» Windows. Для этого выполните следующие рекомендации:
- Нажмите внизу на значок «Пуск» и найдите строку поиска;
- В ней нужно ввести словосочетание «Конфигурация системы». Она нам необходима для настройки чистой загрузки ОС;
- В результатах найдите пункт «msconfig» и выберите его;
- В окне вверху расположены вкладки. Выберите «Общие»;
- Затем уберите галочку с пункта «Обычная загрузка» и переместите её на «Выборочная загрузка»;
- В этом разделе уберите галочку с пункта «Загружать элементы автозагрузки»;
- Затем выберите вверху другую вкладку «Службы» и внизу на чек-боксе поставьте галку «Не отображать службы»;
- Затем нажмите внизу кнопку «Применить» и подтвердите свои действия, нажав «Ок».
Перезагрузите компьютер и снова попытайтесь вызвать ошибку. Если она появляется, значит системные службы не имеют к ней отношения. Но если системное сообщение больше не появляется, можно определить какая из служб вызывает её. Для этого необходимо по очереди ставить одну галочку на службе и перезагружать свой ПК. Для ускорения процесса поиска причинной службы вы можете выбирать не одну, а сразу несколько служб. Главное — запоминать группу, чтобы потом определить нерабочую из этой группы.
Узнайте, как решить в Windows: программа защиты ресурсов Windows обнаружила поврежденные файлы, но не может восстановить некоторые из них.
Во вкладке «Автозагрузки» выберите каждое приложение, которое запускается вместе с Windows и нажмите внизу кнопку «Выключить». При входе в систему способом чистой загрузки, их также нужно поочередно включить, чтобы определить причину ошибки. Когда вы определите службу, её можно временно отключить. После этого выясните, как можно устранить проблемы с этой службой. Также попробуйте переустановить или удалить программу, которую вы устанавливали на рабочую операционную систему.
- Откройте «Пуск» и нажмите справа на пункт «Панель управления»;
- Выберите здесь «Удаление программ» и найдите нужную в списке установленных;
- Нажмите на название ПО и вверху выберите мышью кнопку «Удалить»;
- Перезагрузите компьютер.
Восстановление системных файлов
Если предыдущий метод не помог устранить ошибку, попробуем восстановить все возможные сбои в системных файлах. Для этого в Windows есть собственные утилиты. Вам понадобится стабильное подключение к интернету, так как утилитам нужен будет доступ к серверу Майкрософт для скачивания поврежденных файлов. Выполните следующую инструкцию:
- Необходимо запустить командную строку. Делать это нужно так: откройте «Пуск» и напишите в поиске «Командная строка». В результатах выберите её ПКМ. В контекстном меню появится пункт «От имени администратора». Нажмите его;
- В окне нужно записать «sfc /scannow» и нажать кнопку ввода. Дождитесь её завершения и проверьте, появляется ли ошибка 2147467262 «Интерфейс не поддерживается». Если вам удалось её исправить, можно закрыть все ненужные окна и продолжить работу;
- Если сбой снова появляется, в этом же окне введите другую команду: «dism /online /cleanup-image /checkhealth» без кавычек и нажмите кнопку ввода;
- Дождитесь завершения процесса проверки файлов, перезагрузите компьютер и снова попробуйте выполнить действия, которые вызывали ошибку.
Если этот метод также не помог, как и предыдущий, попробуйте восстановить систему при помощи загрузочного диска Windows. DVD, с которого вы устанавливали систему. Чтобы загрузиться с диска, вам снова нужно будет установить параметры загрузки с дискового привода в BIOS. Следующие действия схожи с установкой. Только при выборе действий нужно указать «Восстановление системы», вместо установки. Далее следуйте подсказкам мастера.
Утилита Windows Fix
Раньше на официальном сайте Microsoft была доступна утилита от создателей Windows. Она позволяла устранять множество проблем на компьютере и называлась Windows Fix It. Разработчики утилиты реализовали её функции иначе. Уже долгое время она не доступна по адресу загрузки. В последних версиях Windows разработчики присвоили возможности когда-то существовавшей утилиты во встроенной в ОС «Устранение проблем». В ранних версиях этот пункт никогда не рассматривался пользователями как действенный. Но сегодня, запустив «Устранение неполадок» в Windows 8.1, 10, мастер действительно становится полезным.
Группой программистов была разработана другая неофициальная версия этой утилиты. Загрузить её можно по адресу https://windowsfix.ru/. Так как разработчик неизвестен, перед запуском и установкой проверьте утилиту на вирусы. Для ОС Windows 10 есть другая утилита, которая также решает множество ошибок и сбоев. Скачать её можно на странице . Её не нужно устанавливать, это портативная программа. Требуется только запуск исполняемого файла. В целях безопасности компьютера, утилиту также нужно проверить на вирусы.
Если уж речь пошла о неофициальных методах решения, попробуйте скачать и запустить утилиту с данного форума — http://delphidevelop.ru/forum/29-312-1/. Ссылка находится в первом посте. Каждый, кто испробовал её утверждают, что ошибку удалось устранить.
Другие способы решения ошибки
Если появляется ошибка, и вы не можете открыть папки на своем компьютере, попробуйте создать новую учетную запись. Она не поможет решить ошибку на учетной записи администратора, но у вас будет доступ к файлам, которые можно перенести на другой диск, флэшку или в облако.
- Если пользователю не доступно стандартное окно «Пуск» или «Панель управления», нажмите вместе WIN+R и введите «netplwiz». Нажмите ENTER;
- Нажмите кнопку «Добавить» и создайте нового пользователя, присвоив нужные параметры;
- Перезагрузите компьютер и выберите новую учетную запись.
Когда вы окажитесь в системе, попробуйте открыть папки, где находятся важные данные и перенесите их. Сохранив копии файлов, систему можно попытаться восстановить или переустановить.
Есть еще один способ, который может решить ошибку 2147467262 — интерфейс не поддерживается. Он заключается в перерегистрации файлов динамической библиотеки (dll). Для его применения вам нужно вводить последовательно большое количество команд. По сложности он сопоставим с переустановкой Windows.
Игорь_МММ
09.03.19 — 16:00
то что в клиенте из под Веб нельзя создавать COMОбъект — это знаю. Но НаСервере, что тоже нельзя?
Суть проблемы ОбменMSWord — общий модуль с компиляцией на сервере. В тонком работает, в в веб возвращает следующее:
{ОбщийМодуль.ОбменMSWord.Модуль(6)}: Ошибка при вызове конструктора (COMОбъект)
ОбъектВорд = Новый COMОбъект(«Word.Application»);
по причине:
по причине:
-2147467262(0x80004002): Интерфейс не поддерживается
Garykom
1 — 09.03.19 — 16:24
Сервер на линуксе?
ДенисЧ
2 — 09.03.19 — 18:18
(1) Не то сообщение
(0) А там вообще ворд есть?
Игорь_МММ
3 — 09.03.19 — 19:01
(1) база файловая
(2) да, в тонком же работает
RomanYS
4 — 09.03.19 — 19:06
(3) А в тонком через веб-сервер работает?
Игорь_МММ
5 — 09.03.19 — 19:12
(4) нет, локально
RomanYS
6 — 09.03.19 — 19:20
(5) «локально» серверный код на файловой базе выполняется локально, а через веб-сервер к файловой базе серверный код выполняется на машине веб-сервера. И там ворда или нет или он не доступен по каким-то причинам
Игорь_МММ
7 — 09.03.19 — 19:52
если я правильно копаю, то у меня в DCOM нет Ворда. Как понять есть ворд на web-сервере? у меня IIS.
Asmody
8 — 09.03.19 — 20:01
(7) Обычно Word появляется на машине после того, как кто-нибудь установит туда MS Office
Patriot1C
9 — 09.03.19 — 21:09
(0) Похоже COM не установлен на Сервер. Он не ставиться по умолчанию как устаревшая технология.
Игорь_МММ
10 — 09.03.19 — 23:12
(9) можно поподробнее? что делать то?
Garykom
11 — 09.03.19 — 23:26
Объясни нафуя тебе Word на сервере? Есть куча библиотек которые умеют файлы Word’а писать же
Игорь_МММ
12 — 10.03.19 — 08:49
(11) на сервере лежит шаблон договора в ворде. Клиенты соответственно заполняют его своими данными.
МимохожийОднако
13 — 10.03.19 — 10:00
(12) Ответь на ВСЕ вопросы и замечания.
Игорь_МММ
14 — 10.03.19 — 10:20
(13) считал, что все что предлагали прочел и погуглил.. что по вашему я пропустил?
веб — для меня тема новая, переработали конфу под веб-клиент, теперь лезут косяки связанные хз с чем (так для меня, однако). Очень бладгодарен был бы за дельный совет=помощь.
МимохожийОднако
15 — 10.03.19 — 10:33
(14) Когда ответить по всем замечаниям, то наверняка придёт уточнение по тем пунктам, которые не понял или проигнорировал. Коллективный разум-это сила. Даже в мусорной куче советов может затеряться бриллиант правильного ©
МимохожийОднако
16 — 10.03.19 — 10:33
*ответишь
DrZombi
17 — 10.03.19 — 15:56
(0) Сервер Вынь х64? Сервер 1С х64 ?
DrZombi
18 — 10.03.19 — 15:57
+ и да, офис на сервере установлен?
Версия офиса х64?
Игорь_МММ
19 — 10.03.19 — 16:12
(17) 1С сервера нет — база файловая.
(18) офис на компьютере где исполняется серверный код — да, установлен. В тонком клиенте все работает.
Как я понял из комментов в ветке — проблема в том, что офиса нет на веб-сервере. Не могу понять как это решить
МимохожийОднако
20 — 10.03.19 — 16:16
(19)Упроси админов на компьютере, где веб-сервер запущен установить Word. Это же очевидно.
Игорь_МММ
21 — 10.03.19 — 16:48
(20) на этом компьютере он установлен … зуб даю)
в конце концов, в режиме отладки веб-клиента идет эта же ошибка:
{ОбщийМодуль.ОбменMSWord.Модуль(6)}: Ошибка при вызове конструктора (COMОбъект)
ОбъектВорд = Новый COMОбъект(«Word.Application»);
: Интерфейс не поддерживается
Игорь_МММ
22 — 10.03.19 — 16:49
+ я сам сижу сейчас за этим компьютером))
Игорь_МММ
23 — 10.03.19 — 16:59
(20) ->(19) то что пишу «Как я понял из комментов в ветке — проблема в том, что офиса нет на веб-сервере» : я так понимаю что ворд надо как-то прописать в IIS, помимо того что он просто есть на машине
Игорь_МММ
24 — 10.03.19 — 17:02
+ короче, машина на которой установлен Веб-сервер и есть машина где лежит база 1С.
DrZombi
25 — 10.03.19 — 17:16
(24) «Пацак», ты нормально народу опиши, что у тебя там стоит.
Вот ничерта не понял, есть у тебя на веб сервере офис или нет.
МимохожийОднако
26 — 10.03.19 — 17:17
Разрядность 1С какая? Word как СОМ зарегистрирован? Зря не расписываешь подробно
Игорь_МММ
27 — 10.03.19 — 17:24
(25) -> (7) я же писал «как понять стоит он на веб-сервере?». вы под веб сервером что понимаете: физическую машину, железо или программное обеспечение (в моем случае IIS)? на физической машине (где лежит база 1С и IIS) ворд стоит.
(26) 1С 32, судя по диспетчеру задач. «Word как СОМ зарегистрирован?» — это как понять,где посмотреть ))?
МимохожийОднако
28 — 10.03.19 — 17:31
(27) Попробуй зарегистрировать файл comcntr.dll в папке bin твоей 1С
Игорь_МММ
29 — 10.03.19 — 17:42
МимохожийОднако
30 — 10.03.19 — 17:45
https://its.1c.ru/db/bsp246doc#content:52:hdoc:_top:соединение%20word
Возможно, зря бьёшся с веб-клиентом.
Вот цитата из ссылки:»Важно! Печать из макетов офисных документов в форматах Microsoft Word и OpenOffice.org Writer не доступна в веб-клиенте.»
Игорь_МММ
31 — 10.03.19 — 17:55
(30) это скорее относится к подсистеме Печать
ругается на СOMОбъект, а СП говорит:
COMОбъект (COMObject)
Конструкторы:
По имени приложения
Описание:
Создает COM-объект (например, Word, Excel и т.д.). Методы и свойства СОМ-объектов в дальнейшем становятся доступными через данный объект.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Игорь_МММ
32 — 10.03.19 — 17:57
+ все больше склоняюсь, что с правами что-то .. но уже плясал вокруг этого, но не поборол
МимохожийОднако
33 — 10.03.19 — 18:01
Если права, то права пользователя, под которым запущена служба веб-сервера
dmpl
34 — 10.03.19 — 20:13
(12) Преобразуй в HTML и вставляй данные клиентов по шаблону.
Игорь_МММ
35 — 14.03.19 — 10:46
(33) в DCOM дал права на пользователя Все по такой схеме http://catalog.mista.ru/public/325873/. Но не помогает. Есть еще какие-нибудь идеи?
Игорь_МММ
36 — 14.03.19 — 10:57
+ млин, сделал симетричные действия только с Excel — отработало корректно
ОбъектВорд = Новый COMОбъект(«Excel.Application»);
сообщить(«объект excel создан»);
Игорь_МММ
37 — 18.03.19 — 17:55
Поставили Apache вместо IIS — CОМ объект создался. IIS как ни крутили — побороть не смогли.
Теперь как бы документ вордовский создается, создается на клиенте (через веб-клиент), записывается на диск, но процедура НачатьЗапускПриложения(,ФайлИмя) запускает этот файлик, созданный во временной папке, как я понимаю где-то в расширении браузера 1СFileExtensionChrWin32, соответственно он нигде не отображается. После закрытия сессии (закрытия формы документа недостаточно) этот вордовский файлик можно запустить.
Знает ли кто в чем тут дело?
Garykom
38 — 18.03.19 — 18:02
Тут дело в том что новые технологии плохо совместимы со старыми.
Представь что веб-клиента запущена на линуксе или на макоси, что будет?
Игорь_МММ
39 — 18.03.19 — 18:06
(38) без понятия.
dmpl
40 — 18.03.19 — 18:19
(37) Чего вы так к этому Word’у прицепились? Автоматизировать надо по-нормальному, тогда не будет необходимости править документ после формирования.
Игорь_МММ
41 — 18.03.19 — 18:25
(40) уже помышляю перевести работу с договорами на html, но надо курить эту тему еще: как там с заполнением таблиц, что с печатью
dmpl
42 — 18.03.19 — 18:29
(41) Там несложно оказалось. Поначалу макет можно из Word’а сохранить в html, затем вставить шаблонные поля, а для редактирования — разобрать через DOM и заменить что где надо. Word — это пройденный этап, как убрали его из продакшена — так сразу пропали вопросы с непонятками: то не открылся, то открылся, но свернутый в фоне, то заменил не в том документе…
Garykom
43 — 18.03.19 — 18:52
(41) У вас много шаблонов договоров?
Просто я сейчас решение-конфу делаю аля «Конструктор документов» для сложных изменяемых шаблонов, которые динамически формируются.
Нечто вроде
https://www.freshdoc.ru/dogovor/dogovory_arendy/_dogovor_arendy_nejilogo_pomescheniya/
https://helpcenter.doc.one/hc/ru/articles/360002486873-Создание-и-удаление-условий-отображения
Только сам редактор на 1С и для применения из конфигураций 1С в основном.
Garykom
44 — 18.03.19 — 18:53
И кстати да столкнулся что с xls(x) есть много чего для работы из 1С, а вот для doc(x) почти нет.
Игорь_МММ
45 — 18.03.19 — 20:39
(42) (40) Word в плане возможностей оформления побогаче же будет нежели HTML? у нас было все сделано по вот этому типу:http://hj.net.ua/bounties/1С/MSWordPrint/MSWordPrint.html. Пока за веб не взялись все было замечательно. А с печатью HTML из под тонкого/толстого клиента заморотов нет?
(43) да нет — порядка десятка
Сияющий в темноте
46 — 18.03.19 — 20:49
Вообще то,нужно учиться генерить pdf,всякие там ворды html и мохел,это все очень сильно нестандартно,а pdf как был,так и остается.
Garykom
47 — 18.03.19 — 20:54
(46) Как раз PDF намного проще генерить чем DOC, есть множество готового и бесплатного.
HTML тоже легко делать, но как оно выйдет на печать это большой вопрос.
Garykom
48 — 18.03.19 — 21:19
Из бесплатного что умеет с DOC работать есть Apache POI
https://poi.apache.org/
Но требует установки Java на машину.
В принципе можно поставить на сервер и там использовать.
Когда то давно использовал для чтения/записи XLS файлов.
Игорь_МММ
49 — 18.03.19 — 22:36
и все-таки насчет описанного в (37) никаких нет мнений?
Игорь_МММ
50 — 19.03.19 — 08:24
почему 1CFileExtensionChrWin32 может «держать» файл? косяк идет именно на этапе записи двоичных данных. При этом запись происходит (раз файл можно открыть после закрытия сеанса)
Garykom
51 — 19.03.19 — 11:58
(50) Потому что такая кривая реализация.
Например 1С тоже «держит файл» после сохранения ТабДок в xls
Сияющий в темноте
52 — 19.03.19 — 12:26
У них,видимо,кривая сборка мусора,как в javascript,пока обьект не умер,он файл держит.
А бы попробовал через тот же обьект открыть друной файл,чтобы ему было чем заняться.
Игорь_МММ
53 — 19.03.19 — 16:24
в итоге заработало так:
вместо НачатьЗапись() для веб-клиента надо идти по пути НачатьПолучениеФайлов() и все у вас будет хорошо ! ))) Причем актуально это именно для Ворд(может еще для чего — не скажу), другие типы файлов перевариваются
итого (для потомков): чтобы запускать Ворд под веб клиента 1.нужен не IIS a Apache, и 2.см.выше
По некоторым данным. при попытке обновить операционную систему Windows 11/10 Windows 11/10 показывает код ошибки 0x80004002. В этом посте мы обсудим эту проблему и посмотрим, что вы можете сделать, если вы когда-нибудь столкнетесь с кодом ошибки Центра обновления Windows 0x80004002. Ниже приведено точное сообщение об ошибке, которое видят пользователи.
Были проблемы с загрузкой некоторых обновлений, но мы попробуем позже. Если вы продолжаете видеть это, попробуйте поискать в Интернете или обратиться за помощью в службу поддержки. Этот код ошибки может помочь: (0x80004002)
0x80004002 -2147467262 E_NOINTERFACE Такой интерфейс не поддерживается
Что вызывает код ошибки Центра обновления Windows 0x80004002?
Код ошибки Центра обновления Windows 0x80004002 обычно возникает, когда файл Wups2.dll отсутствует. Это файл Центра обновления Windows, который можно восстановить, восстановив системные файлы. После этого мы увидим, как сделать то же самое. После этого мы упомянули некоторые другие решения и обходные пути, которые вы можете попробовать.
Если вы столкнулись с кодом ошибки Центра обновления Windows 0x80004002, попробуйте следующие решения и предложения для решения проблемы.
- Запустите средство устранения неполадок Центра обновления Windows
- Переименуйте папку Software Distribution и папку Catroot 2.
- Сбросить компоненты Центра обновления Windows
- Убедитесь, что службы, связанные с Центром обновления Windows, работают.
- Используйте DISM для исправления поврежденных файлов Центра обновления Windows.
Поговорим о них подробно.
1]Запустите средство устранения неполадок Центра обновления Windows.
Прежде всего, мы попытаемся запустить средство устранения неполадок Центра обновления Windows, которое представляет собой встроенную утилиту, способную сканировать и восстанавливать Центр обновления Windows. Итак, поскольку вы не можете обновить Windows, этот инструмент должен знать, почему это происходит, и давать вам возможность исправить это.
Чтобы запустить средство устранения неполадок, выполните указанные шаги.
Windows 11
- Открыть настройки.
- Перейти к Система > Устранение неполадок.
- Нажмите на Другие средства устранения неполадок.
- Наконец, нажмите кнопку «Выполнить», связанную с опцией «Центр обновления Windows».
Windows 10
- Запускаем настройки Win+I.
- Нажмите на Windows & Update > Устранение неполадок > Дополнительное средство устранения неполадок.
- Выбирать Центр обновления Windows и нажмите на Запустите это средство устранения неполадок вариант.
Надеюсь, это поможет вам.
2]Переименуйте папки SoftwareDistribution и Catroot 2.
Вы можете увидеть соответствующий код ошибки, если некоторые из ваших файлов Центра обновления Windows повреждены. Эти поврежденные файлы могут вызвать у вас серьезные проблемы и помешать вашей системе получить Центр обновления Windows. Чтобы решить эту проблему, мы собираемся очистить папки SoftwareDistribution и Catroot 2. Эти папки содержат информацию об обновлениях Windows и могут быть повреждены. Но прежде всего откройте командную строку и выполните следующие команды.
чистая остановка wuauserv чистая остановка cryptSvc чистые стоповые биты чистая остановка msiserver
После выполнения команд некоторые службы Центра обновления Windows будут отключены. Теперь выполните следующие команды, чтобы переименовать папки SoftwareDistribution и Catroot2.
ren %systemroot%System32Catroot2 Catroot2.old ren %systemroot%SoftwareDistribution SoftwareDistribution.old
Наконец, выполните следующие команды, чтобы запустить службы, которые мы остановили ранее.
net start wuauserv net start cryptSvc net start биты net start msserver
Теперь вы можете проверить наличие обновлений и посмотреть, решена ли ваша проблема.
3]Сброс компонентов Центра обновления Windows
Вот краткое изложение всех шагов, которые необходимо предпринять для сброса компонентов Центра обновления Windows до значений по умолчанию в Windows 11/10:
- Остановить службы обновления Windows
- Удалите файлы qmgr*.dat.
- Сбросьте папки SoftwareDistribution и catroot2
- Восстановите для службы BITS и службы Windows Update дескриптор безопасности по умолчанию.
- Перерегистрируйте файлы BITS и файлы DLL, связанные с Центром обновления Windows.
- Удалить неверные значения реестра
- Сбросить Винсок
- Перезапустите службы Центра обновления Windows.
СОВЕТ. Сброс средства обновления Windows автоматически восстановит настройки и компоненты по умолчанию.
4]Убедитесь, что службы, связанные с Центром обновления Windows, работают.
Откройте диспетчер служб Windows и убедитесь, что службы, связанные с Центром обновления Windows, такие как Центр обновления Windows, Центр обновления Windows Medic, Службы обновления Orchestrator и т. д., не отключены.
Конфигурация по умолчанию на автономном ПК с Windows 11/10 выглядит следующим образом:
- Служба обновления Windows — вручную (запускается)
- Медицинские службы Центра обновления Windows — руководство
- Криптографические службы — автоматически
- Фоновая интеллектуальная служба передачи — вручную
- Запуск процесса сервера DCOM — автоматический
- Сопоставитель конечных точек RPC — автоматический
- Установщик Windows — вручную.
Это обеспечит доступность требуемых служб.
5]Используйте DISM для исправления поврежденных файлов Центра обновления Windows.
Если ваш клиент Центра обновления Windows уже поврежден, вы можете использовать работающую установку Windows в качестве источника восстановления или использовать параллельную папку Windows из общего сетевого ресурса в качестве источника файлов. Вместо этого вам потребуется выполнить следующую команду:
DISM.exe/Online/Cleanup-Image/RestoreHealth/Source:C:RepairSourceWindows/LimitAccess
Здесь нужно заменить C:RepairSourceWindows местозаполнитель с расположением вашего источника ремонта.
Этот пост покажет вам, как исправить поврежденные системные файлы Центра обновления Windows с помощью DISM Tool.
Мы надеемся, что вы сможете решить проблему, используя решения, упомянутые в этом посте.
Читать: Центр обновления Windows не установился или не загружается
Как исправить ошибку службы обновления Windows?
Если вы получаете сообщение об ошибке службы обновления Windows, прежде всего, откройте «Службы» и убедитесь, что служба обновления Windows запущена. Если служба запущена, но вы продолжаете получать сообщение об ошибке, запустите средство устранения неполадок Центра обновления Windows, чтобы отсканировать и устранить проблему. Кроме этого, вы можете попробовать решения, упомянутые в этом посте, и посмотреть, поможет ли это.
Чтение: ошибка 0x80246017, нам не удалось установить обновления, используя учетную запись.
Что такое код ошибки 0xC1900101?
Код ошибки 0xC1900101 — это ошибка Центра обновления Windows, она возникает, когда Windows не может обновиться до последней версии, поэтому она откатывает ОС до предыдущей версии. Обычно это вызвано нехваткой памяти, но есть и некоторые факторы. Мы рекомендуем вам проверить наш пост о том, как устранить ошибку с кодом 0xC1900101 Центра обновления Windows.
Читайте также: Исправьте код ошибки 0xc1900101 в помощнике по установке Windows.
Платформа: 1С:Предприятие 8.3 (8.3.6.2100)
Конфигурация:Риэлтор. Управление продажами недвижимости для «1С:Управление торговлей 8», редакция 11.1 (11.1.10.145/2.7.3.42)
Проблема:Файловая база размещена на сервере, опубликована на веб-сервере. Пользователи подключаются через тонкого клиента к веб-серверу. При печати шаблона WORD база выдает ошибку -2147467262(0х80004002) Интерфейс не поддерживается.
Сложности в процессе решения:
Согласно инструкции разработчиков, по словам ошибки «интерфейс не поддерживается» проделали следующее:
1. Пользователю USR1CV82, от имени которого запускается сервер 1С, дать права на запуск DCOM MicrosoftWord и DCOM Microsoft Excel (при необходимости).
Для этого нужно:
1.1. Запустить службу компонентов. Из командной строки набрать
mmccomexp.msc
и найти компоненту Word или Excel. Пример для Word представлен на рисунке ниже:
При запуске службы компонентов на 64-х разрядной машине, 32-х разрядные компоненты могут не отображаться, тогда запуск нужно осуществить через команду:
C:WINDOWSSysWOW64>mmc comexp.msc /32
1.2. Открыть свойства компоненты и перейти на закладку Безопасность.
1.3. В разделе Разрешения на запуск выбрать пункт Настроить и нажать кнопку Изменить. Добавить пользователя USR1CV82.
Не помогло, база выдавала ошибку: Данная команда недоступна, так как не открыт ни один документ.
В ходе работ закончилась лицензия на MS Office, и в конфигурации после создания COM-объекта «Word.Application» на каждом шаге в отладке ОС запускает процесс завершения установки и активации MS Office. Клиент купил лицензию для сервера на MS Office.
После установки лицензий вернулась ошибка -2147467262(0х80004002) Интерфейс не поддерживается.
По словам разработчиков, перевод обработки Word на клиента не решит проблему. Судя по предоставленным нами логам — ошибка возникает в режиме веб-клиента. В этом режиме программная обработка Word на клиенте не возможна, только серверная обработка.
Но для работы базы необходимо было решить данную проблему. Мы вернули все изменения, которые сделали по инструкции разработчика. Долго прорабатывали доступы к папкам временного хранилища для пользователей извне. Создали еще одного администратора без пользовательских настроек, для него заново настраивали IIS.
Решение:
Настроили работу сервера через Apache. Создали папку, в которой находятся редактируемые шаблоны Word, дали общий доступ к этой папке, для пользователя IUSR и группы пользователей IIS_users.
На Windows Server 2012 (64 разрядности) установлен Word 2013 (32 разрядности), а у пользователей установлен Adobe Reader. Шаблон договора заполняется в 1С на сервере и конвертируется в PDF, сохраняется во временную папку на сервере.
Мы переписали обработку, чтобы документ сохранился в формат PDF (по требованию клиента для запрета редактирования, изменения документа) и сохранялся во временное хранилище 1С. Из хранилища документ/файл передается на указанный нами путь (во временные папки у клиента), как для тонкого клиента, так и для веб-клиента. Открывается файл именно из этой временной папки. Ниже пример кода, который мы дописали для передачи файла с сервера на клиент.
&НаКлиенте
Попытка
ЗапуститьПриложение(ПолноеИмяФайлаНаКлиенте);
Исключение
Адрес = УПН_ОбщиеПроцедуры.ПолучитьФайл(ПолноеИмяФайлаНаКлиенте);
Описание = Новый ОписаниеПередаваемогоФайла(«C:doc» + ДанныеФайла.ИмяФайла,Адрес);
МассивОписаний=Новый Массив;
МассивОписаний.Добавить(Описание);
ПолучитьФайлы(МассивОписаний,,,Ложь);
ЗапуститьПриложение(«C:doc» + ДанныеФайла.ИмяФайла);
КонецПопытки;
&НаСервере
Функция ПолучитьФайл(ПолноеИмяФайлаНаКлиенте) Экспорт
Двоичное = Новый ДвоичныеДанные(ПолноеИмяФайлаНаКлиенте);
Адрес = ПоместитьВоВременноеХранилище(Двоичное);
Возврат Адрес
КонецФункции
В настроках Панель управления, далее путь: Администрирование->Управление групповой политикой->Домены – выбираем наш сервер и во вкладке «Делегирование» добавляем группу IIS_users и пользователя IUSR (через которого подключаются внешние пользователи).
В веб-клиенте после отправки документа на печать браузе попросит установить расширение. Нужно установить, и все заработает:
Предпочтительнее использовать Internet Explorer (IE) не ниже 8 версии. При использовании Google Chrome (гугл хром) возникает ошибка: Использование модальных окон в данном режиме запрещено.
Если Internet Explorer не запускает документ на печать, можно принудительно запустить браузер от имени администратора:
В тонком клиенте сразу открывается заполненный шаблон (на примере ниже стерты данные клиента). Форма открывается в формате PDF по требованию клиента, чтобы пользователь не мог редактировать документ перед печатью.
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
ок. спасибо. Будем разбираться…
Автор Истребитель, 22 июл 2015, 17:48
0 Пользователей и 1 гость просматривают эту тему.
При попытке создать COM объект Excel.Application вылезает стандартная ошибка:
Ошибка получения объекта COM: -2147467262(0x80004002): No such interface support
Однако, если открыть диспетчер задач, то приложение excel.exe запускается!
Приложение excel x32, 1Cка тоже x32.
В списках классов (HKLMSoftwareClasses) класс Excel.Application присутствует.
Права на Distributed COM дал своему юзеру, перелогинился, не помогло, дал всем (Everyone), не помогло.
База файловая.
Попробуйте так
Попытка
ОбъектЭксель = ПолучитьCOMОбъект(СокрЛП(ФайлЗагрузки));//ФайлЗагрузки - путь к файлу. строка
Исключение
Сообщить("Неудачная попытка открытия файла:"+СокрЛП(ФайлЗагрузки));
Возврат;
КонецПопытки;
КомОбъектЗагрузки = ОбъектЭксель.WorkSheets(1);
Очень забавно. Если перед вызовом функции с параметрами (Путь,Excel.Application) вызвать её без указания Excel.Application то повторный вызов уже с указанием Excel.Application работает!
Т.е. так работает:
ПолучитьCOMОбъект(ИмяФайла,)
ПолучитьCOMОбъект(ИмяФайла,"Excel.Application")
Так не работает:
ПолучитьCOMОбъект(ИмяФайла,"Excel.Application")
В любом случае, в дальнейшем вылезает вообще непонятная ошибка:
{Форма.Форма.Форма(47)}: Ошибка при вызове метода контекста (ПрочитатьЛистExcel)
ПрочитатьЛистExcel(,ПолучитьCOMОбъект(ИмяФайла));
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'param':
форма: Элемент
имя: {http://v8.1c.ru/8.2/managed-application/modules}param
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа 'COMОбъект'
Поздравляю, походу вы открыли для себя впервые особенности управляемого приложения.
Ок, где мне почитать про эти «особенности» чтобы разобраться как выполнить такое простое задание, как чтение excel файла?
Путем проб и ошибок
Пробуйте «&НаСервере» всё это делать
Помогли — Скажи спасибо! Решил сам — поделись решением!
Не сочтите за издевательство: http://v8.1c.ru/metod/faq2/
&НаКлиенте — это только форма, видимость,доступность, условное офомление и т.д.
&НаСервере — это работа с объектами. Добавить строки, заполнить объект и т.д.
С клиента можно вызывать сервер, наоборот — нельзя.
Все прочие особенности = интернет большой, уверен справитесь
Дааа. Простейшие вещи теперь хрен сделаешь. Почитал я это. Замечательно! Погуглил даже. Простейшая задача, неясно как решать.
Я хочу создать программно документ, заполнить его на основании данных из экселя, и открыть.
На клиенте я это сделать не могу, на клиенте «Документы» неопределена (нельзя создать документ). На сервере тоже не могу, нельзя открыть форму. На клиент нельзя передать ссылку на документ (когда пытаюсь сделать «Возврат Док», где Док это новый документ, вылезает ошибка передачи данных). Гугл «1с 8.3 передача документа с сервера на клиент» ничего не дал.
Что делать?
Остается сесть в углу и плакать.
На клиенте формируете структуры с простыми данными (строки, даты и т.д.) передаете на сервер. Создаете/ищите документ на сервере и возвращаете ссылку на документ.
1
2
Показывать по
10
20
40
сообщений
Новая тема
Ответить
pentanom
Дата регистрации: 09.04.2014
Сообщений: 40
Необходимо сравнить данные в трех базах: УТ 10.3, БП 2.0 и Бух 7.7
Хочу использовать для этого COM-подключение к базам 7.7 и 2.0 из УТ.
Если базы поставить на Win XP, то COM-подключение работает.
Начинается лето и некоторое время я хотел поработать на даче. Перенес базы на ноутбук с Win 8.1. Отдельно все базы доступны и с ними можно делать что угодно. Но COM-подключение не работает
Выдается ошибка:
Ошибка при вызове конструктора (COMОбъект)
БазаОлеТек= Новый COMОбъект(«V77.Application»);
по причине:
-2147467262(0x80004002): Интерфейс не поддерживается
Что можно (нужно) сделать чтобы все-таки COM-подключение заработало ?
Платформа 7.7 устанавливалась копированием.
Для УТ и БП использовалась платформа 8.2 и 8.3
Консультант 1С
Дата регистрации: 06.09.2008
Сообщений: 300
pentanom пишет:
Цитата |
---|
Платформа 7.7 устанавливалась копированием |
Я впервые слышу об установке копированием.
Почему бы не установить штатно?
Рисовод
Дата регистрации: 26.12.2007
Сообщений: 25776
Геннадий Новосибрск пишет:
Цитата | ||
---|---|---|
pentanom пишет:
Я впервые слышу об установке копированием. |
но бесплатно …
pentanom
Дата регистрации: 09.04.2014
Сообщений: 40
Геннадий Новосибрск, На Win 8 (а также и на Win 7) штатно не устанавливается
Почитайте об этом в интернете
pentanom
Дата регистрации: 09.04.2014
Сообщений: 40
Рисовод, Про «бесплатно» не понятно. Из установочного комплекта 7.7 в Win 8 не устанавливается
Рекомендуют установить платформу на XP, а потом скопировать каталог, в который установлена 7.7, скопировать на компьютер с Win 8.
Так и было сделано. Отдельно все базы доступны работают, а COM-подключение не работает.
И причем здесь «бесплатно» ?
Консультант 1С
Дата регистрации: 06.09.2008
Сообщений: 300
pentanom пишет:
Цитата |
---|
Геннадий Новосибирск , На Win 8 (а также и на Win 7) штатно не устанавливается Почитайте об этом в интернете |
Как-то странноватенько — задавать один вопрос, под которым закамуфлирован на самом деле — другой, для разгадывания которого отсылать в интернет без конкретных ссылок
Там же в интернете и пишут — что делать… надо было очень постараться, чтобы понять это так, чтобы не работало и не устанавливалось…
Первые 2 самых очевидных способа, среди множества других без установок копированием, которые находятся сразу поиском в интернете:
- поднять виртуальную машину с Windows XP из под Windows 8.1 и там всё устанавливать без копирования
- в свойствах файла запуска в разделе Совместимость отметить:
— запустить программу в режиме совместимости c:
Windows XP (Пакет Обновления 3)
— Выполнять эту программу от имени администратора
pentanom
Дата регистрации: 09.04.2014
Сообщений: 40
Геннадий Новосибирск, Вопрос был: «Что можно (нужно) сделать чтобы все-таки COM-подключение заработало ? «
И хотелось бы получить ответ на этот вопрос.
А если вы что-то советуете по поводу установки 7.7 на Вин 8, то сначала попробуйте сделать это.
А если нечего ответить на мой вопрос, то и не надо отвечать вообще.
pentanom
Дата регистрации: 09.04.2014
Сообщений: 40
Копировать нужно в каталог Program Files (x86). Тогда COM-подключение работает. В XP можно копировать в любое место (хотя можно и установить из установочного комплекта).
Денис (САМАРА)
Дата регистрации: 09.04.2008
Сообщений: 8351
Цитата |
---|
В XP можно копировать в любое место |
Это от того, что теперь есть разница между х86 и х64 приложениями. К какой категории относится 7.7 думаю сами догадаетесь…
pentanom
Дата регистрации: 09.04.2014
Сообщений: 40
Денис (САМАРА), теперь -то все умные. А что бы вначале об этом не сказать ?
Лучше подскажите как эту тему закрыть.
При установке программ, запуск которых доступен из контекстного меню Windows, происходит ошибка — 2147467262 Интерфейс не поддерживается. Как исправить её, вы сможете узнать в этой статье. Такая проблема может появляться на всех версиях ОС Windows. Но чаще она возникает на Windows 7. Будут использованы разные методы устранения. Если не подойдет один — используйте другой.
Содержание
- Причины возникновения ошибки в Windows
- Ошибка 2147467262 в Windows — что делать
- Восстановление системных файлов
- Утилита Windows Fix
- Другие способы решения ошибки
Причины возникновения ошибки в Windows
Причиной ошибки могут быть сбои системных файлов при установке программного обеспечения. При этом нарушения могли быть уже в системе до установки программ. Появляется сообщение, когда пользователь пытается воспользоваться контекстным меню (нажимая правую кнопку мыши (ПКМ)). Эти симптомы ОС могут говорить о наличии вирусов в компьютере, которые часто нарушают системные файлы.
Читайте также: эта система не удовлетворяет минимальным требованиям Intel HD Graphics.
Ошибка 2147467262 в Windows — что делать
Для начала попробуйте простые действия, которые могут решить большинство временных сбоев в системе. Прежде всего перезагрузите компьютер и попробуйте вызвать ошибку отсутствия поддержки интерфейса. Следующий шаг может помочь определить, с какой программой связано появление ошибки. Нам нужно попытаться загрузиться в «чистую» Windows. Для этого выполните следующие рекомендации:
- Нажмите внизу на значок «Пуск» и найдите строку поиска;
- В ней нужно ввести словосочетание «Конфигурация системы». Она нам необходима для настройки чистой загрузки ОС;
- В результатах найдите пункт «msconfig» и выберите его;
- В окне вверху расположены вкладки. Выберите «Общие»;
- Затем уберите галочку с пункта «Обычная загрузка» и переместите её на «Выборочная загрузка»;
- В этом разделе уберите галочку с пункта «Загружать элементы автозагрузки»;
- Затем выберите вверху другую вкладку «Службы» и внизу на чек-боксе поставьте галку «Не отображать службы»;
- Затем нажмите внизу кнопку «Применить» и подтвердите свои действия, нажав «Ок».
Перезагрузите компьютер и снова попытайтесь вызвать ошибку. Если она появляется, значит системные службы не имеют к ней отношения. Но если системное сообщение больше не появляется, можно определить какая из служб вызывает её. Для этого необходимо по очереди ставить одну галочку на службе и перезагружать свой ПК. Для ускорения процесса поиска причинной службы вы можете выбирать не одну, а сразу несколько служб. Главное — запоминать группу, чтобы потом определить нерабочую из этой группы.
Узнайте, как решить в Windows: программа защиты ресурсов Windows обнаружила поврежденные файлы, но не может восстановить некоторые из них.
Во вкладке «Автозагрузки» выберите каждое приложение, которое запускается вместе с Windows и нажмите внизу кнопку «Выключить». При входе в систему способом чистой загрузки, их также нужно поочередно включить, чтобы определить причину ошибки. Когда вы определите службу, её можно временно отключить. После этого выясните, как можно устранить проблемы с этой службой. Также попробуйте переустановить или удалить программу, которую вы устанавливали на рабочую операционную систему.
- Откройте «Пуск» и нажмите справа на пункт «Панель управления»;
- Выберите здесь «Удаление программ» и найдите нужную в списке установленных;
- Нажмите на название ПО и вверху выберите мышью кнопку «Удалить»;
- Перезагрузите компьютер.
Восстановление системных файлов
Если предыдущий метод не помог устранить ошибку, попробуем восстановить все возможные сбои в системных файлах. Для этого в Windows есть собственные утилиты. Вам понадобится стабильное подключение к интернету, так как утилитам нужен будет доступ к серверу Майкрософт для скачивания поврежденных файлов. Выполните следующую инструкцию:
- Необходимо запустить командную строку. Делать это нужно так: откройте «Пуск» и напишите в поиске «Командная строка». В результатах выберите её ПКМ. В контекстном меню появится пункт «От имени администратора». Нажмите его;
- В окне нужно записать «sfc /scannow» и нажать кнопку ввода. Дождитесь её завершения и проверьте, появляется ли ошибка 2147467262 «Интерфейс не поддерживается». Если вам удалось её исправить, можно закрыть все ненужные окна и продолжить работу;
- Если сбой снова появляется, в этом же окне введите другую команду: «dism /online /cleanup-image /checkhealth» без кавычек и нажмите кнопку ввода;
- Дождитесь завершения процесса проверки файлов, перезагрузите компьютер и снова попробуйте выполнить действия, которые вызывали ошибку.
Если этот метод также не помог, как и предыдущий, попробуйте восстановить систему при помощи загрузочного диска Windows. DVD, с которого вы устанавливали систему. Чтобы загрузиться с диска, вам снова нужно будет установить параметры загрузки с дискового привода в BIOS. Следующие действия схожи с установкой. Только при выборе действий нужно указать «Восстановление системы», вместо установки. Далее следуйте подсказкам мастера.
Утилита Windows Fix
Раньше на официальном сайте Microsoft была доступна утилита от создателей Windows. Она позволяла устранять множество проблем на компьютере и называлась Windows Fix It. Разработчики утилиты реализовали её функции иначе. Уже долгое время она не доступна по адресу загрузки. В последних версиях Windows разработчики присвоили возможности когда-то существовавшей утилиты во встроенной в ОС «Устранение проблем». В ранних версиях этот пункт никогда не рассматривался пользователями как действенный. Но сегодня, запустив «Устранение неполадок» в Windows 8.1, 10, мастер действительно становится полезным.
Группой программистов была разработана другая неофициальная версия этой утилиты. Загрузить её можно по адресу https://windowsfix.ru/. Так как разработчик неизвестен, перед запуском и установкой проверьте утилиту на вирусы. Для ОС Windows 10 есть другая утилита, которая также решает множество ошибок и сбоев. Скачать её можно на странице . Её не нужно устанавливать, это портативная программа. Требуется только запуск исполняемого файла. В целях безопасности компьютера, утилиту также нужно проверить на вирусы.
Если уж речь пошла о неофициальных методах решения, попробуйте скачать и запустить утилиту с данного форума — http://delphidevelop.ru/forum/29-312-1/. Ссылка находится в первом посте. Каждый, кто испробовал её утверждают, что ошибку удалось устранить.
Другие способы решения ошибки
Если появляется ошибка, и вы не можете открыть папки на своем компьютере, попробуйте создать новую учетную запись. Она не поможет решить ошибку на учетной записи администратора, но у вас будет доступ к файлам, которые можно перенести на другой диск, флэшку или в облако.
- Если пользователю не доступно стандартное окно «Пуск» или «Панель управления», нажмите вместе WIN+R и введите «netplwiz». Нажмите ENTER;
- Нажмите кнопку «Добавить» и создайте нового пользователя, присвоив нужные параметры;
- Перезагрузите компьютер и выберите новую учетную запись.
Когда вы окажитесь в системе, попробуйте открыть папки, где находятся важные данные и перенесите их. Сохранив копии файлов, систему можно попытаться восстановить или переустановить.
Есть еще один способ, который может решить ошибку 2147467262 — интерфейс не поддерживается. Он заключается в перерегистрации файлов динамической библиотеки (dll). Для его применения вам нужно вводить последовательно большое количество команд. По сложности он сопоставим с переустановкой Windows.
Настройка COM Объекта «Excel.Application» на сервере 1С, настройка поможет обработать большие файлы Excel на сервере 1C, в том числе через фоновые задания.
Та же данная настройка может решить проблему с ошибкой 1С:
ошибка -2147467262(0x80004002): Интерфейс не поддерживается
- Заходим на сервер приложений 1С под локальным админом или администратором домена
- Запускаем DCOMCNFG (Консоль настроек «Службы компонентов»)
- Открываем ветку Корень консоли -> Службы компонентов -> Компьютеры -> Мой компьютер -> Настройка DCOM
- Ищем «Microsoft Excel Application»
- Если запись существует, то переходим к пункту 4
- Закрываем «Службы компонентов»
- Настройка реестра
- Запускаем REGEDIT
- Открываем ветку КомпьютерHKEY_CLASSES_ROOTAppIDEXCEL.EXE, если ее нет, то создаем
- Создаем в ней строковый параметр AppID = {00020812-0000-0000-C000-000000000046}
- Выполняем команду «mmc comexp.msc /32», которая делает то же что и DCOMCONFIG, но позволяет видеть 32 битные компоненты
- После этого в Component Services должен появиться «Microsoft Excel Application»
- Настраиваем свойства DCOM компонента «Microsoft Excel Application»
- Заходим в «Свойства», закладка «Безопасность»
- «Разрешения на запуск и активацию» — Настроить — Изменить
- Добавляем пользователя, под которым запускается агент сервера 1С
- Назначаем ему только следующие права (Разрешить):
- Локальный запуск
- Локальная активация
- «Разрешения на доступ» -Настроить — Изменить
- Добавляем пользователя, под которым запускается агент сервера 1С
- Назначаем ему только следующие права (Разрешить):
- Локальный доступ
- «Разрешения на запуск и активацию» — Настроить — Изменить
- Переходим на вкладку «Удостоверение»
- Выбираем «Запускающий пользователь»
- Заходим в «Свойства», закладка «Безопасность»
- Настройка системных папок
- Папка «C:WindowsSysWOW64configsystemprofileDesktop»
- Проверяем наличие папки , если нет -то создаем
- Заходим в «Свойства» этой папки, закладка «Безопасность»
- Добавляем, если нет, пользователя, под которым запускается агент сервера 1С
- Добавляем права «Чтение» и «Запись»
- Папка «C:WindowsSystem32configsystemprofileDesktop»
- Проверяем наличие папки , если нет -то создаем.
- Заходим в «Свойства» этой папки, закладка «Безопасность»
- Добавляем, если нет, пользователя, под которым запускается агент сервера 1С
- Добавляем права «Чтение» и «Запись»
- Папка «C:WindowsSysWOW64configsystemprofileDesktop»
Часто пользователи при входе в личный кабинет клиентов, таких как 1C, ЕГАИС и т.д. сталкиваются с ошибкой «интерфейс не поддерживается». Эта ошибка также может возникать во многих других ситуациях, например во время открытия Excel-документа или даже при входе в электронный кошелек типа WebMobey. Сегодня мы постараемся максимально кратко и емко рассказать, как решить эту проблему.
Причины ошибки
Для отправки отчетных деклараций клиенту надо войти в личный кабинет, но иногда при входе возникает ошибка следующего содержания:
Объект: undefined
Номер ошибки : 2146828275
Описание : Несоответствие типа
Ошибка имеет общий характер, по одному лишь коду сложно определить точные причины проблемы. Все зависит от того, в каком приложении или портале у вас возникает данная ошибка. Первостепенно советуем обратиться в соответствующую техподдержку, где специалисты смогут помочь в конкретной ситуации. Сейчас мы рассмотрим только общий алгоритм на примере портала ЕГАИС и ФСРАР.
Внешний вид ошибки
Способы решения
- Убедитесь, что у вас имеются все необходимые компоненты для входа в личный кабинет egais.ru по аппаратному ключу (такие как ФСРАР Крипто 2 и ФСРАР Крипто 3). Вход в ЕГАИС должен производиться только в браузере Internet Explorer с помощью лицензионных и актуальных ключей, например, Jacata или Rutoken ECP 2.0. Если вы не можете войти в личный кабинет портала egais.ru или ФСРАР с помощью аппаратного ключа (не электронной копии), то попробуйте выполнить следующее:
- На компьютере зайдите в «Панель управления» — «Установка и удаление программ» и удалите клиент ClientSetup и ФСРАР Крипто 2;
- Зайти на официальный сайт egais.ru. После этого в верхней части экрана нажмите на пункт «Войти в личный кабинет». Далее перейдите в раздел «Ознакомиться с условиями и проверить их выполнение» и нажмите «Начать проверку». Во время проверки вам предложат скачать ФСРАР Крипто 3. Загрузите его на ваш компьютер и установите;
- После того как установка будет завершена перезагрузите браузер Internet Explorer. Далее нажмите на символ шестеренки, перейдите в раздел «Свойства браузера» — «Безопасность». Пролистайте список в самый низ и активируйте пункт «Включить защитный режим». После этого во вкладке «Безопасность» снова проскрольте страницу в самый низ и нажмите на пункт «Включить блокирование всплывающих окон». После этого попробуйте снова осуществить вход в личный кабинет egais.ru или ФСРАР. Часто на этом этапе ошибка перестает появляться.
Включение защитного режима в Windows
- Если у вас имеется специальное программное обеспечение для распознавания сертификатов, например, КриптоПРО 4.0, то для корректной работы клиента необходимо наличие официальной и действующей лицензии, приобретенной в удостоверяющем центре. Данное программное обеспечение не подходит для работы совместно с аппаратными ключами. КриптоПРО 4.0 используется в том случае, если вы купили сертификаты для сдачи отчетов по ГОСТ 2012. Данное ПО может быть записано на Рутокен, eToken, либо, как это часто бывает, на обычные usb-накопители.
- Если вы не можете войти в личный кабинет ФСРАР по ГОСТ 2012 при наличии лицензионного программного обеспечения, то необходимо выполнить следующее:
- Запустите браузер Google Chrome (если браузер не установлен на компьютер, то установите с официального сайта.
- По ссылке https://chrome.google.com/webstore/cate войдите в магазин расширений Google. В поиске введите cades browser plug и установите его;
- После этого перейдите в расширения браузера и включите CryptoPro Extension for CAdES Browser plug;
- Попробуйте снова войти в личный кабинет ФСРАР.
Итог
Надеемся, данный материал помог вам решить ошибку 2147467262 «интерфейс не поддерживается». Если проблема осталась актуальной, то обратитесь за помощью к специалисту, либо оставьте контактный телефон в службе поддержки.
Оценка статьи:
(3 оценок, среднее: 5,00 из 5)
Загрузка…
Самое читаемое:
17.03.2022
Как установить дополнительные виджеты на экран телефона Андроид
Если у Вас возникли сложности с тем, чтобы добавить виджеты приложений на смартфон, то это пошаговое руководство…
Далее
17.03.2022
Как очистить кэш телеграмма на телефоне Андроид
Люди, которые активно используют мессенджеры, зачастую не догадываются о том, что в их мобильных гаджетах…
Далее
17.03.2022
Как скопировать ссылку на свой телеграмм Андроид
Любой из пользователей мессенджера Телеграм в тот или иной момент времени задавался вопросом, как узнать, где…
Далее
02.03.2022
Ошибка 104101 в Zoom – как исправить
Содержание1 Ошибка 104101 в Zoom – как исправить1.1 Причины ошибки1.2 Смена параметров брандмауэра Windows1.2.1 Отключение…
Далее
Ошибка при вызове конструктора (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, поэтому вся обработка перенесена на сервер.
Бывает такое: вы прописываете для компонента пользователя и пароль.
Затем через некоторое время меняете пароль и компонент перестает работать: выходит такая же ошибка «Интерфейс не поддерживается». Следует просто вбить новый пароль.
Впервые в истории планеты Земля все люди во всех странах задались единой целью: заработать столько денег, чтобы уподобиться героям рекламы.
{ВнешняяОбработка.загрузка_из_XLS.Форма.Форма.Форма(94)}: Ошибка при вызове конструктора (COMОбъект): -2147467262(0x80004002): Интерфейс не поддерживается
Уже видел и читал аналогичные темы на форуме, делал всё как писали, дал все права на пользователей, и на USRS1c8, и все равно ничего.
Дело такое, открываю базу локально, все работает, отладка читает excel.
Недавно перенесли базу на Postgres и после этого все отладки связанные с excel, word и прочим, просто престали работать. Уже перечитал кучу тем, ничего пока что не помогло.
0
1С 8.x : Ошибка при вызове конструктора (COMОбъект): Интерфейс не поддерживается
Подключение к 7.7 через OLE в регламентном задании из 8.2
Если во время выполнения задания, при попытке подключиться через OLE из 8.2 к 7.7 возникает ошибка:
Ошибка при вызове конструктора (COMОбъект): Интерфейс не поддерживается.
поможет следующее
Пуск — Выполнить — DCOMCNFG.
«Службы компонентов» — «Компьютеры» — «Мой компьютер» — «Настройка DCOM».
V77.GeneralPropPage и V77.SalaryPropPage.
На закладке «Безопасность» установить необходимые права для того, от чьего имени запускается сервер 1С (8.2)
Вопрос При работе с 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
Игорь_МММ
09.03.19
✎
16:00
то что в клиенте из под Веб нельзя создавать COMОбъект — это знаю. Но НаСервере, что тоже нельзя?
Суть проблемы ОбменMSWord — общий модуль с компиляцией на сервере. В тонком работает, в в веб возвращает следующее:
{ОбщийМодуль.ОбменMSWord.Модуль(6)}: Ошибка при вызове конструктора (COMОбъект)
ОбъектВорд = Новый COMОбъект(«Word.Application»);
по причине:
по причине:
-2147467262(0x80004002): Интерфейс не поддерживается
Garykom
09.03.19
✎
16:24
Сервер на линуксе?
ДенисЧ
09.03.19
✎
18:18
(1) Не то сообщение
(0) А там вообще ворд есть?
Игорь_МММ
09.03.19
✎
19:01
(1) база файловая
(2) да, в тонком же работает
RomanYS
09.03.19
✎
19:06
(3) А в тонком через веб-сервер работает?
Игорь_МММ
09.03.19
✎
19:12
(4) нет, локально
RomanYS
09.03.19
✎
19:20
(5) «локально» серверный код на файловой базе выполняется локально, а через веб-сервер к файловой базе серверный код выполняется на машине веб-сервера. И там ворда или нет или он не доступен по каким-то причинам
Игорь_МММ
09.03.19
✎
19:52
если я правильно копаю, то у меня в DCOM нет Ворда. Как понять есть ворд на web-сервере? у меня IIS.
Asmody
09.03.19
✎
20:01
(7) Обычно Word появляется на машине после того, как кто-нибудь установит туда MS Office
Patriot1C
09.03.19
✎
21:09
(0) Похоже COM не установлен на Сервер. Он не ставиться по умолчанию как устаревшая технология.
Игорь_МММ
09.03.19
✎
23:12
(9) можно поподробнее? что делать то?
Garykom
09.03.19
✎
23:26
Объясни нафуя тебе Word на сервере? Есть куча библиотек которые умеют файлы Word’а писать же
Игорь_МММ
10.03.19
✎
08:49
(11) на сервере лежит шаблон договора в ворде. Клиенты соответственно заполняют его своими данными.
Мимохожий Однако
10.03.19
✎
10:00
(12) Ответь на ВСЕ вопросы и замечания.
Игорь_МММ
10.03.19
✎
10:20
(13) считал, что все что предлагали прочел и погуглил.. что по вашему я пропустил?
веб — для меня тема новая, переработали конфу под веб-клиент, теперь лезут косяки связанные хз с чем (так для меня, однако). Очень бладгодарен был бы за дельный совет=помощь.
Мимохожий Однако
10.03.19
✎
10:33
(14) Когда ответить по всем замечаниям, то наверняка придёт уточнение по тем пунктам, которые не понял или проигнорировал. Коллективный разум-это сила. Даже в мусорной куче советов может затеряться бриллиант правильного ©
Мимохожий Однако
10.03.19
✎
10:33
*ответишь
DrZombi
10.03.19
✎
15:56
(0) Сервер Вынь х64? Сервер 1С х64 ?
DrZombi
10.03.19
✎
15:57
+ и да, офис на сервере установлен?
Версия офиса х64?
Игорь_МММ
10.03.19
✎
16:12
(17) 1С сервера нет — база файловая.
(18) офис на компьютере где исполняется серверный код — да, установлен. В тонком клиенте все работает.
Как я понял из комментов в ветке — проблема в том, что офиса нет на веб-сервере. Не могу понять как это решить
Мимохожий Однако
10.03.19
✎
16:16
(19)Упроси админов на компьютере, где веб-сервер запущен установить Word. Это же очевидно.
Игорь_МММ
10.03.19
✎
16:48
(20) на этом компьютере он установлен … зуб даю)
в конце концов, в режиме отладки веб-клиента идет эта же ошибка:
{ОбщийМодуль.ОбменMSWord.Модуль(6)}: Ошибка при вызове конструктора (COMОбъект)
ОбъектВорд = Новый COMОбъект(«Word.Application»);
: Интерфейс не поддерживается
Игорь_МММ
10.03.19
✎
16:49
+ я сам сижу сейчас за этим компьютером))
Игорь_МММ
10.03.19
✎
16:59
(20) ->(19) то что пишу «Как я понял из комментов в ветке — проблема в том, что офиса нет на веб-сервере» : я так понимаю что ворд надо как-то прописать в IIS, помимо того что он просто есть на машине
Игорь_МММ
10.03.19
✎
17:02
+ короче, машина на которой установлен Веб-сервер и есть машина где лежит база 1С.
DrZombi
10.03.19
✎
17:16
(24) «Пацак», ты нормально народу опиши, что у тебя там стоит.
Вот ничерта не понял, есть у тебя на веб сервере офис или нет.
Мимохожий Однако
10.03.19
✎
17:17
Разрядность 1С какая? Word как СОМ зарегистрирован? Зря не расписываешь подробно
Игорь_МММ
10.03.19
✎
17:24
(25) -> (7) я же писал «как понять стоит он на веб-сервере?». вы под веб сервером что понимаете: физическую машину, железо или программное обеспечение (в моем случае IIS)? на физической машине (где лежит база 1С и IIS) ворд стоит.
(26) 1С 32, судя по диспетчеру задач. «Word как СОМ зарегистрирован?» — это как понять,где посмотреть ))?
Мимохожий Однако
10.03.19
✎
17:31
(27) Попробуй зарегистрировать файл comcntr.dll в папке bin твоей 1С
Игорь_МММ
10.03.19
✎
17:42
Мимохожий Однако
10.03.19
✎
17:45
https://its.1c.ru/db/bsp246doc#content:52:hdoc:_top:соединение%20word
Возможно, зря бьёшся с веб-клиентом.
Вот цитата из ссылки:»Важно! Печать из макетов офисных документов в форматах Microsoft Word и OpenOffice.org Writer не доступна в веб-клиенте.»
Игорь_МММ
10.03.19
✎
17:55
(30) это скорее относится к подсистеме Печать
ругается на СOMОбъект, а СП говорит:
COMОбъект (COMObject)
Конструкторы:
По имени приложения
Описание:
Создает COM-объект (например, Word, Excel и т.д.). Методы и свойства СОМ-объектов в дальнейшем становятся доступными через данный объект.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Игорь_МММ
10.03.19
✎
17:57
+ все больше склоняюсь, что с правами что-то .. но уже плясал вокруг этого, но не поборол
Мимохожий Однако
10.03.19
✎
18:01
Если права, то права пользователя, под которым запущена служба веб-сервера
dmpl
10.03.19
✎
20:13
(12) Преобразуй в HTML и вставляй данные клиентов по шаблону.
Игорь_МММ
14.03.19
✎
10:46
(33) в DCOM дал права на пользователя Все по такой схеме http://catalog.mista.ru/public/325873/. Но не помогает. Есть еще какие-нибудь идеи?
Игорь_МММ
14.03.19
✎
10:57
+ млин, сделал симетричные действия только с Excel — отработало корректно
ОбъектВорд = Новый COMОбъект(«Excel.Application»);
сообщить(«объект excel создан»);
Игорь_МММ
18.03.19
✎
17:55
Поставили Apache вместо IIS — CОМ объект создался. IIS как ни крутили — побороть не смогли.
Теперь как бы документ вордовский создается, создается на клиенте (через веб-клиент), записывается на диск, но процедура НачатьЗапускПриложения(,ФайлИмя) запускает этот файлик, созданный во временной папке, как я понимаю где-то в расширении браузера 1СFileExtensionChrWin32, соответственно он нигде не отображается. После закрытия сессии (закрытия формы документа недостаточно) этот вордовский файлик можно запустить.
Знает ли кто в чем тут дело?
Garykom
18.03.19
✎
18:02
Тут дело в том что новые технологии плохо совместимы со старыми.
Представь что веб-клиента запущена на линуксе или на макоси, что будет?
Игорь_МММ
18.03.19
✎
18:06
(38) без понятия.
dmpl
18.03.19
✎
18:19
(37) Чего вы так к этому Word’у прицепились? Автоматизировать надо по-нормальному, тогда не будет необходимости править документ после формирования.
Игорь_МММ
18.03.19
✎
18:25
(40) уже помышляю перевести работу с договорами на html, но надо курить эту тему еще: как там с заполнением таблиц, что с печатью
dmpl
18.03.19
✎
18:29
(41) Там несложно оказалось. Поначалу макет можно из Word’а сохранить в html, затем вставить шаблонные поля, а для редактирования — разобрать через DOM и заменить что где надо. Word — это пройденный этап, как убрали его из продакшена — так сразу пропали вопросы с непонятками: то не открылся, то открылся, но свернутый в фоне, то заменил не в том документе…
Garykom
18.03.19
✎
18:52
(41) У вас много шаблонов договоров?
Просто я сейчас решение-конфу делаю аля «Конструктор документов» для сложных изменяемых шаблонов, которые динамически формируются.
Нечто вроде
https://www.freshdoc.ru/dogovor/dogovory_arendy/_dogovor_arendy_nejilogo_pomescheniya/
https://helpcenter.doc.one/hc/ru/articles/360002486873-Создание-и-удаление-условий-отображения
Только сам редактор на 1С и для применения из конфигураций 1С в основном.
Garykom
18.03.19
✎
18:53
И кстати да столкнулся что с xls(x) есть много чего для работы из 1С, а вот для doc(x) почти нет.
Игорь_МММ
18.03.19
✎
20:39
(42) (40) Word в плане возможностей оформления побогаче же будет нежели HTML? у нас было все сделано по вот этому типу:http://hj.net.ua/bounties/1С/MSWordPrint/MSWordPrint.html. Пока за веб не взялись все было замечательно. А с печатью HTML из под тонкого/толстого клиента заморотов нет?
(43) да нет — порядка десятка
Сияющий в темноте
18.03.19
✎
20:49
Вообще то,нужно учиться генерить pdf,всякие там ворды html и мохел,это все очень сильно нестандартно,а pdf как был,так и остается.
Garykom
18.03.19
✎
20:54
(46) Как раз PDF намного проще генерить чем DOC, есть множество готового и бесплатного.
HTML тоже легко делать, но как оно выйдет на печать это большой вопрос.
Garykom
18.03.19
✎
21:19
Из бесплатного что умеет с DOC работать есть Apache POI
https://poi.apache.org/
Но требует установки Java на машину.
В принципе можно поставить на сервер и там использовать.
Когда то давно использовал для чтения/записи XLS файлов.
Игорь_МММ
18.03.19
✎
22:36
и все-таки насчет описанного в (37) никаких нет мнений?
Игорь_МММ
19.03.19
✎
08:24
почему 1CFileExtensionChrWin32 может «держать» файл? косяк идет именно на этапе записи двоичных данных. При этом запись происходит (раз файл можно открыть после закрытия сеанса)
Garykom
19.03.19
✎
11:58
(50) Потому что такая кривая реализация.
Например 1С тоже «держит файл» после сохранения ТабДок в xls
Сияющий в темноте
19.03.19
✎
12:26
У них,видимо,кривая сборка мусора,как в javascript,пока обьект не умер,он файл держит.
А бы попробовал через тот же обьект открыть друной файл,чтобы ему было чем заняться.
Игорь_МММ
19.03.19
✎
16:24
в итоге заработало так:
вместо НачатьЗапись() для веб-клиента надо идти по пути НачатьПолучениеФайлов() и все у вас будет хорошо ! ))) Причем актуально это именно для Ворд(может еще для чего — не скажу), другие типы файлов перевариваются
итого (для потомков): чтобы запускать Ворд под веб клиента 1.нужен не IIS a Apache, и 2.см.выше