#0
by Dmitriy_Kolesnikov
Сразу скажу - на файловой базе в Windows 7 этот код работает корректно. Итак, есть: W2016Server + сервер приложений 8.3.10.2580 + самописный документ, в котором есть строчка ДокументВорд = ОбъектВорд.Documents.Add(ИмяФайлаПаспортаЗаявки); Сразу говорю - файл я проверял вот так: Тест = Новый Файл("c: emp_pm est.docx"); Если Тест.Существует Тогда - он существует, и сервер его может прочитать. С правами доступа к папкам всё ОК. На сервере установлен Office 2013 (причем я ставил и 32-битный, и 64-битный), COM-компонент ручками зарегистрировал, поэтому строчка ОбъектВорд = Новый COMОбъект("Word.Application"); теперь выполняется без ошибок. В отладчике объект виден. Так вот, спотыкаемся на строчке ДокументВорд = ОбъектВорд.Documents.Add(ИмяФайлаПаспортаЗаявки); Если файл имеет расширение DOC - ошибка такая: {Документ.дкЗаявкаНаПроект.МодульОбъекта}: Ошибка при вызове метода контекста (Add): Произошла исключительная ситуация (Microsoft Word): Ошибка в Word. Если файл имеет расширение DOCХ - ошибка чуть другая: {Документ.дкЗаявкаНаПроект.МодульОбъекта}: Ошибка при вызове метода контекста (Add): Произошла исключительная ситуация (Microsoft Word): Приложению Word не удалось прочитать документ. Возможно, он поврежден. Попробуйте выполнить следующие действия: * Откройте файл с помощью команды ''Открыть и восстановить''. * Откройте файл с помощью конвертера резервных копий. Я уже в отчаянии, целый день мучаюсь. Сборки Офиса 2013 - от Кролика, с самыми последними обновлениями, сами понимаете, это бренд, здесь всё пучком. (На Win7 с файловой базой, где всё работает - такая же). Майкрософту я доверяю меньше, но завтра-таки попробую поставить c оригинального образа RTM. Интуиция подсказывает, что не взлетит. Подскажите, что ещё можно попробовать проверить?
#1
by Сергиус
А если попробовать зайти на сервер и вручную открыть данный файл? Открывается нормально и содержимое отображает?
#2
by Сергиус
[Сборки Офиса 2013 - от Кролика, с самыми последними обновлениями, сами понимаете, это бренд, здесь всё пучком. (На Win7 с файловой базой, где всё работает - такая же). Майкрософту я доверяю меньше, но завтра-таки попробую поставить c оригинального образа RTM] Достаточно спорное утверждение. Я бы больше доверял оригинальному дистрибутиву, чем какой-то сборке, из которой вполне могли повыкидывать "ненужные" вещи.
#3
by h-sp
попробуйте другую папку. c: emp_pm - очень сомнительное место, вряд ли там откроет файл ворд.
#4
by Dmitriy_Kolesnikov
конечно, открывает и отображает :) Я же не первый день замужем. И даже ЗапуститьПриложение(ИмяФайла), я уверен, будет работать. и папка эта - не первая, до неё я использовал подкаталог во временной папке (пробовал разные). Разумеется, права доступа - всем на всё. Ещё раз повторю, что на локальном компьютере с W7 при такой же структуре папок и том же дистрибутиве Офиса (только без сервера приложений) всё работает. Мне кажется, подвох в Windows 2016. Другой вариант - в сервере приложений. Третьего не дано.
#6
by v77
нафиг вам этот офис вообще уперся. распаковал, засунул в xml чо хочешь, запаковал и все дела. быстро, дешево и сердито.
#7
by DOSS_S
Курить "профиль безопасности" в программе "Администрирование серверов 1С Предприятия". По умолчанию использование COM на сервере 1С запрещено. Не советую работать с вордом екселем и тд. на сервере. Зависнет ворд вместе с ним 1с сеанс, что будете делать?
#8
by Сияющий в темноте
попробуйте написать сценарий и из него управлять вордлм,а уже этот сценарий запустите из 1ц,если что-то пойдет не так можно убить сценарий и ворд из самой 1с а сервер,кстати,обычно 64-битный
#10
by Dedal
Подвохов там масса. Начиная от того под кем выполняется. Если ушло на сервер значит выполняется под серверным userV8 значит у него должен быть доступ к dcom объекту. Лезешь в dcom офиса и выдаешь ему там все права. Но лучше сделать по другому. docx это упакованные в zip xml. на просторах интернета есть уже готовый код. Также реализацию и можно посмотреть в 1С Договорчики. Фактически docx распаковывается, в нужном xml правится, пакуется обратно. Сам понимаешь никаких проблем с COM и офис не нужен.
#11
by Dmitriy_Kolesnikov
изначально офис был 32-битный и была ошибка при создании ком-объекта: ОбъектВорд = Новый COMОбъект("Word.Application"); Но я вручную создал коннектор (по инструкции), и ошибка исчезла. Более того, как сказано в , я снес 32-битный Офис и поставил 64-битный - это ничего не изменило. а ссылку? У меня 15 файлов, часть в DOCX, часть в HTML, надо все их упихать в один. Я делаю это с помощью метода InsertFile. Благодарю, сейчас почитаю про эти профили. Похоже, собака зарыта именно здесь. пользователю usr1cv8 уже выданы везде все права, в том числе в COM+. Насчет XML и ZIP - это интересно, но на будущее. Я уже написал код, который быстро работает на файловой базе. Теперь задача - заставить его выполняться на сервере.
#13
by Dedal
В самом объекте dcom дал права? Администрирование ? Службы компонентов ? *** ? Настройка DCOM ? Документ Microsoft Word 97–2003 ? безопасность.
#14
by Филиал-msk
Сборки Офиса 2013 - от Кролика, с самыми последними обновлениями, сами понимаете, это бренд Кто все эти люди?
#16
by Dmitriy_Kolesnikov
конечно весьма уважаемые люди. Робин Гуды наших дней. руководствуясь вашей логикой, уголовниками можно обозвать 99,9% граждан России, пользующихся компьютерами.
#18
by Dedal
показывай что у тебя между: ОбъектВорд = Новый COMОбъект("Word.Application"); ДокументВорд = ОбъектВорд.Documents.Add(ИмяФайлаПаспортаЗаявки);
Тэги: Админ
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Excel и 1С7.7 Как задать имя книги при создании методом Excel.WorkBooks.Add
- Странная ошибка "ошибка формата потока" с вылетом из сеанса
- Ошибка выполнения запроса "Ошибка при выполнении операции над данными: Ошибка SQL: Де
- v7: Ошибка СУБД.Внутренняя ошибка dbeng 8
- Word.Documents.Add (по шаблону, а шаблон с паролем)
- При отправке сообщения произошла ошибка : Общая ошибка MAPI
- v8: Ошибка СУБД. Внутренняя ошибка компоненты DBENG8 при обмене данными
- Не работает "Word.Documents.Open" на сервере 1С
- Можно как-то перенести "темпы1с" из Documents and Settings на другой диск?
- Ошибка при вызове web-сервиса 1C 8.3 (Внутренняя ошибка. Ошибка инициализации б)
- Ошибка при вызове метода контекста (Записать) Ошибка при выполнении файловой опе
- Ошибка при вызове конструктора (ComОбъект): Ошибка при выполнении приложения-сер
В этой группе 1С
- Не даёт удалить задвоенные объекты, возникшие при обновлении 1С Бух до 3.0
- Модуль криптографии не поддерживает установку пароля к закрытому ключу
- ЗУП 3.1 Документ начисления ЗП - вылазит в доначисление 1 сотрудник.
- Как в конвертации данных при выгрузке задать отбор по виду операции документа
- Бухгалтерия 3.0 Как отключить проверки ИНН и расчетного счета
- УТ 11.3 как установить продажные цены на основании цен поставщика?
- Почтовый клиент - каким предпочитаете пользоваться
- ЗУП 3. Как вывести встроенный макет группировки СКД ?
- Не проставляется Касса ККМ в кассовой смене
- Конвертация отчета зуп 2.5 на зуп 3.1
- 1C УФ. Как при запуске 1С активизировать элемент подсистемы (в панеле разделов)?
- Отключение режима совместимости
- v7: ТиС и АТОЛ 11Ф
- ЗУП 3.1 Норма времени
- Меркурий ВСД. В каких единицах учета работать
- Бухгалтерия 2.0 в 2018 году. Будет ли поддержка?
- СКД представление стажа в понятном виде
- 1С интеграция с API по SOAP
- УНФ как сделать один акт и счет к нескольким заказ нарядам, работам?
- ЗУП 2.5 печать приказа о выходных донору