Ошибка при создании COMобьект

1. user1250478 10.07.19 11:02 Сейчас в теме
При выполненении кода
WordApp = Новый COMОбъект("Word.Application");
Док = WordApp.Documents.Add(ИмяФайлаСПутем,,,true); в это строке возникает ошибка
Ошибка при выполнении обработчика - 'ПриЗаписи'
по причине:
{Документ.ra_Nesootvetstvie.МодульМенеджера(1859)}: Не удалось вывести на печать файл шаблона.
{ОбщийМодуль.ра_ОбщегоНазначенияКлиентСервер.Модуль(160)}: Ошибка при вызове метода контекста (Add)
Док = WordApp.Documents.Add(ИмяФайлаСПутем,,,true);
по причине:
Произошла исключительная ситуация (Microsoft Word): Приложению Word не удалось прочитать документ. Возможно, он поврежден.
Попробуйте выполнить следующие действия:
* Откройте файл с помощью команды ''Открыть и восстановить''.
* Откройте файл с помощью конвертера резервных копий.
ВызватьИсключение Ответ.ОписаниеОшибки;
ИмяФайлаСПутем это C:\Windows\Temp\v8_2032_1a096.tmp
Во вложенном файле описание WordApp
Где смотреть? Сервер 1С (64 )запущен от системной записи . В панели задач видно много процесов Word 32.
Прикрепленные файлы:
WordApp.xlsx
Найденные решения
10. ediks 335 10.07.19 14:52 Сейчас в теме
(9) Один из вариантов - перенести исполнение кода с сервера на клиент, как сделано здесь.
Переопределить место временных папок можно - поиск рулит
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. most_fucking 10.07.19 11:08 Сейчас в теме
7. ediks 335 10.07.19 13:23 Сейчас в теме
(1) Обработчик ПриЗаписи выполняется на сервере, если это управляемая форма. Сервер знает этот путь к файлу "C:\Windows\Temp\v8_2032_1a096.tmp"?
8. user1250478 10.07.19 13:37 Сейчас в теме
(7) Всё на моём локальном компьютере.
9. user1250478 10.07.19 14:47 Сейчас в теме
(7) Может как-то определить другой каталог для временных файлов , чтобы не в Windows . Как это переопределить ПолучитьИмяВременногоФайла это системная функция?
10. ediks 335 10.07.19 14:52 Сейчас в теме
(9) Один из вариантов - перенести исполнение кода с сервера на клиент, как сделано здесь.
Переопределить место временных папок можно - поиск рулит
3. user1250478 10.07.19 11:19 Сейчас в теме
4. user1250478 10.07.19 12:11 Сейчас в теме
Сам файл v8_2032_1a096.tmp если скопировать и переименовать в docx открывается нормально.
5. tvm 10.07.19 12:14 Сейчас в теме
а файл уже не открыт другим процессом?
6. user1250478 10.07.19 13:11 Сейчас в теме
Ну я его скопировал свободно и открыл , даже открылся не переименованным.
А процессы только руками убираются. Причем сначала делал несколько попыток , посмотрел а в панели куча процессов.
11. x_x 2 10.07.19 16:05 Сейчас в теме
а почему add а не open?
WordApp = Новый COMОбъект("Word.Application");
//создание
Док = WordApp.Documents.Add

//открытие уже существующего
Док = WordApp.Documents.Open(ИмяФайлаСПутем)



Documents.Add method (Word)

expression.Add (Template, NewTemplate, DocumentType, Visible)

expression.Open (FileName, ConfirmConversions, ReadOnly, AddToRecentFiles, PasswordDocument, PasswordTemplate, Revert, WritePasswordDocument, WritePasswordTemplate, Format, Encoding, Visible, OpenConflictDocument, OpenAndRepair, DocumentDirection, NoEncodingDialog)
12. user1250478 16.07.19 16:15 Сейчас в теме
Да рано радовался. При следующей команде Док.SaveAs(ИмяФайлаПечатиPDF, 17);
Пишет ошибку Значение не является значением объектного типа (SaveAs)
При этом и сам Док в Табло Неопределено.
Word 16 64-разрядный.
Странно что на ноутбуке всё нормально работает.
13. user1250478 16.07.19 16:41 Сейчас в теме
Вот эта команда уже неправильно отрабатывает , не создаёт документ из файла
Док = WordApp.Documents.Open(ИмяФайлаСПутем,,,true);
C:\Intel\Темр\v8_62FA_6e.tmp это ИмяФайлаСПутем
14. user1477397 05.12.20 09:52 Сейчас в теме
Подскажите пожалуйста что за ошибки и кто как решил

Попытка
		ОбъектВорд = Новый COMОбъект("Word.Application"); 
	Исключение
		Сообщить("Ошибка при запуске Microsoft Word: " + ОписаниеОшибки(), СтатусСообщения.Внимание);
		Возврат Неопределено;
	КонецПопытки;
	
	//Путь к шаблону
	ОбъектВорд.Documents.Add("C:\Users\Users1\Desktop\Ворд.docx");
	ШаблонВорд = ОбъектВорд.ActiveDocument;
        ОбъектВорд.Application.Visible = Истина;
	ОбъектВорд.Activate();

Показать


{Документ.ПриемНаРаботуВОрганизацию.Форма.ФормаДокумента.Форма(790)}: Ошибка при вызове метода контекста (Add)
ОбъектВорд.Documents.Add("C:\Users\Users1\Desktop\Ворд.docx");
по причине:
Произошла исключительная ситуация (Microsoft Word): Приложению Word не удалось прочитать документ. Возможно, он поврежден.
Попробуйте выполнить следующие действия:
* Откройте файл с помощью команды ''Открыть и восстановить''.
* Откройте файл с помощью конвертера резервных копий.
15. sasha777666 321 09.10.23 10:16 Сейчас в теме
16. sasha777666 321 09.10.23 10:41 Сейчас в теме
(15) Решение:
Помогло создание 2-х каталогов и добавление полных прав на эти каталоги для пользвоателя, под которым стартует сервис 1С.

Каталоги:

C:\Windows\SysWOW64\config\systemprofile\Desktop\
и
C:\Windows\System32\config\systemprofile\Desktop\

Источник информации с более расширенной инструкцией: http://pyatilistnik.org/dcom-in-excel-application/ здесь
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

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

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

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

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)