Имя: Пароль:
1C
1С v8
Проблемы при работе с Word на сервере
0 guitar_player
 
09.07.12
08:50
Создаю ком соединение на сервере вот таким образом:
   
Попытка
       
    COMОбъект = Новый COMОбъект("Word.Application");
   
Исключение
       
    ОбщегоНазначения.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка",
           ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()),,Истина);
   
КонецПопытки;

Сохраняю вордовский файл из двоичных данных и затем открываю его:

ДвоичныеДанныеМакета.Записать(ИмяВременногоФайла);    
   
Попытка
   COMОбъект.Documents.Open(ИмяВременногоФайла);
Исключение
   
   Попытка
       COMОбъект.Quit(0);
   Исключение
   КонецПопытки;
   
   COMОбъект = 0;

КонецПопытки;

В дальнейшем хочу заполнить реквизиты в документе:

Word = COMОбъект.ActiveDocument;

Для Сч = 1 По Word.Variables.Count Цикл
   Word.Variables.Item(Сч).Value = "<значение не установлено>";
КонецЦИкла;

Но ругается на поле Variables, почему то у свойства com-объекта ActiveDocument нет отбражаются доступные свойства.
Подскажите пожалуйста куда копать?
1 izekia
 
09.07.12
09:00
а какой точно текст ошибки? версия ворд какая?
2 guitar_player
 
09.07.12
09:07
Стоит 2007 (компоненты Word, Excel)
Текста вот такой - "Поле объекта не обнаружено (Variables)'"
Проблема в том (запустил отладчик на сервере), что у поля ActiveDocument ком-соединения нет полей, при этом на клиенте все отрабатывает нормально...
3 izekia
 
09.07.12
09:08
(2) разрядность сервера и офиса?
4 guitar_player
 
09.07.12
09:17
(3) ворд 32-битный.
к серверу прямого доступа не имею, но наскольку понимаю 64-х битный. С этим может быть какая то проблема?
5 izekia
 
09.07.12
09:18
(4) да, нужен офис той же разрядности
6 guitar_player
 
09.07.12
09:20
(5) спасибо...
а не подскажешь, это где нибудь описано, чтобы почитать можно было...
7 guitar_player
 
09.07.12
09:23
(5) а это только в ком соединении? Потому что под пользователем 32х разрядный ворд нормально открывается на 64х разрядной машинке
8 izekia
 
09.07.12
09:24
(7) да, это в коме только проявляется
9 izekia
 
09.07.12
09:26
вот, кстати, интересная ссылка на обход http://www.gfi.com/blog/32bit-object-64bit-environment/
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой