Ошибка при создании 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/ здесь
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот