|
v8: Не работает COM-объект Excel на стороне 64х сервера 1С | ☑ | ||
---|---|---|---|---|
0
RomaH
naïve
12.03.12
✎
12:20
|
v8: Куда копать - не открывает файл Excel
может кто сталкивался и решил? в кратце: &НаСервереБезКонтекста Процедура ЗагрузитьИзФайлаНаСервере(АдресХранилища) ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресХранилища); ИмяФайла = ПолучитьИмяВременногоФайла("xlsx"); ДвоичныеДанные.Записать(ИмяФайла); ЗагрузитьФайл(ИмяФайла); УдалитьФайлы(ИмяФайла); КонецПроцедуры &НаСервереБезКонтекста Процедура ЗагрузитьФайл(ИмяФайла) Ексель = Новый COMОбъект("Excel.Application"); Ексель.Workbooks.Open(ИмяФайла); говорит что либо файла не существует, либо занят другим приложением, либо имя книги совпадает с открытым в данный момент уникалльный временный файл, сушествует (я его на точке останова могу открыть интерактивно) создается сервером и удалается без проблем |
|||
1
vmv
12.03.12
✎
12:21
|
перед опен через Файл проверить валидность имени не судьба?
|
|||
2
vmv
12.03.12
✎
12:23
|
зачем его открывать на точке останова, а потом спрашивать почему блокировка
|
|||
3
vmv
12.03.12
✎
12:25
|
ну и последний вариант, имя книги созданного в во временных уже существует - убираем за собой да.
больше вариантов нет, только от лукавого |
|||
4
RomaH
naïve
12.03.12
✎
14:21
|
(1) перед открытием файл создается - он реально создается в темпах, я его могу открыть
(2) он хоть на точке хоть без точки - результат одиин (3) ИмяФайла = ПолучитьИмяВременногоФайла("xlsx"); - знаешь как работает? |
|||
5
RomaH
naïve
12.03.12
✎
14:24
|
про валидность имени - делаем по другому - создаю файл сам - интерактивно, сохраняю его в каталог с полным доступом
пытаюсь открыть - результат тот же аналогично не может сохранить пустой файл при работе через скрипт - создание книги и сохранение - все ок да - сервер 64х |
|||
6
RomaH
naïve
12.03.12
✎
14:31
|
хм, решили, обращайтесь если что
|
|||
7
sprog
12.03.12
✎
15:15
|
А решается это так:
на сервере убиваем excel (taskkill /im excel.exe /f) открываем оснастку "Службы компонентов" (Пуск->Администрирование->Службы компонентов) в ней раскрываем ветку Службы компонентов->Компьютеры->Мой компьютер->Настройка DCOM справа в списке находим Microsoft Excel Application, открываем Свойства, вкладка Удостоверение, выбираем "Текущий пользователь", ОК. Готово |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |