Перестал работать ексель через "Excel.Application"
☑
0
simol
27.07.20
✎
13:58
Привет, коллеги!
Никто не сталкивался с подобной ситуацией
Windows2012+Excel2013
После очередных обновлений то ли винды то ли офиса в 1с создаю
Эксель = Новый COMОбъект("Excel.Application");
Свойства изменяются
Эксель.Visible = 0;
Эксель.DisplayAlerts = 0;
А вызовы методов
Книга = Эксель.WorkBooks.Add();
Вызывают окошко винды с заголовком "Server Busy" и текстом
"Это действие не может быть выполнено так как другое приложение занято"
Эффект происходит под разными пользователями на двух серверах в разное время, в свежих сеансах, где запущена только 1с.
Или может подскажете иной способ прописать формулы из 1С.
1
Ёпрст
гуру
27.07.20
✎
14:13
(0) в диспетчере задач, видать полно уже экселей запущенных есть, да ?
2
simol
27.07.20
✎
14:21
(1) да, накапливаются
3
simol
27.07.20
✎
14:34
+(1), но удаление екселей не решает вопрос.
4
vicof
27.07.20
✎
14:42
Перезагрузи сервер и напиши нормальный код
5
Смотрящий
27.07.20
✎
14:44
(0) Раз скапливаются Excel-объект в памяти - значит не происходит их уничтожение.
Вставь в конец:
Книга.Close();
Если Эксель.WorkBooks.Count() = 0 Тогда // У юзера не открыты никакие XLS-книги
Эксель.Quit();
КонецЕсли;
6
simol
27.07.20
✎
14:52
кажись понял куда ноги растут. Офис не автивирован и в закромах винды создается окно визарда активации. На нем и застрвеает.
7
simol
27.07.20
✎
15:04
Убрал Эксель.Visible = 0; и окно активации не создается
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс