Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.10.25;
Скачать: CL | DM;

Вниз

Word Preview   Найти похожие ветки 

 
_REA_   (2008-08-26 15:40) [0]

Хочется сделать предпросмотр Word документов в своем приложении. Какими средствами это можно сделать?

OleContainer глючит и работать отказывается. В частности на 2003 Word выдает: Неверно указана единица измерения. При этом сам Word запускается где то в фоне и иногда даже не в фоне - от чего зависит непонятно. А некоторые документы нормально показывает. Почти...

TWebBrowser тоже не удалось заставить работать для этой цели.

И кстати, кто под моим ником еще зарегистрировался то?


 
Deltas ©   (2008-08-26 15:43) [1]

А использовать компоненты WordApplication, WordDocument с панели Servers не пробовал?


 
_REA_   (2008-08-26 15:59) [2]

Так они вроде дополнительное окно откроют, а мне нужно на панельке чтобы.


 
clickmaker ©   (2008-08-26 16:19) [3]

> TWebBrowser тоже не удалось заставить работать для этой
> цели

то есть? он же по сути ворд внутри себя открывает


 
_REA_   (2008-08-26 17:09) [4]

>то есть? он же по сути ворд внутри себя открывает

ну так то да, но там зависит от настроек эксплорера много как я понимаю и еще кучу методов каких то надо знать, чтобы это подогнать под обычное представление. У меня во всяком случае документ один раз повис, один раз не открылся (возможно ActiveX отключен в настройках). Все это вместе не радует.


 
Юрий Зотов ©   (2008-08-26 17:26) [5]

> на 2003 Word выдает: Неверно указана единица измерения.

Либо установите в системе запятую разделителем дробной части, либо уберите с тулбара Word"а кнопку "Межстрочный интервал" и сохраните Normal.dot.

После этого должно заработать.


 
_REA_   (2008-08-26 17:44) [6]

2 Юрий Зотов
Спасибо, это я уже прочитал, но мне нужно чтобы работало не у меня, а у того кому я продам программу да еще на всех версиях ворда.
Так же это лечится скачиванием заплатки к офису, но не буду же я поставлять с программой заплатки к офису. К тому же оно ведет себя непредсказуемо - если бы просто ошибку выдавало это еще пол беды.


 
Юрий Зотов ©   (2008-08-26 18:04) [7]

> _REA_   (26.08.08 17:44) [6]

Была та же проблема. К счастью, моя программа должна была работать не с любыми документами Word"а, а только с документами определенного типа. Поэтому вопрос удалось решить так:

1. Создал шаблон без пресловутой кнопки.
2. Документы, с которым работала моя программа делались на основе этого шаблона.


 
Юрий Зотов ©   (2008-08-26 18:07) [8]

Кстати, патч к офису (если он официальный) - это хорошее (и вполне легальное) решение вопроса. С программой патч можно и не поставлять, а дать на него ссылку в документации и указать, что это обновление должно быть установлено. Нормальная практика, так часто делают.


 
Юрий Зотов ©   (2008-08-26 18:11) [9]

Кстати, еще вариант - использовать не сам Word (то есть, не обязывать юзера покупать Office), а совершенно официальный и совершенно бесплатный WordViewer. А просмотр запускать через CreateProcess.


 
_REA_   (2008-08-27 10:15) [10]

Спасибо за информацию! Попробую.


 
_REA_   (2008-08-27 10:50) [11]

Поманипулировав настройками TOleContainer удалось заставить его приемлемо работать в "неактивированном" режиме. Это меня устраивает, но в этом режиме он показывает только первую страницу. С этим можно как то побороться?


 
_REA_   (2008-09-03 15:36) [12]

Попытался вытащить данные с помощью автоматизации через IDataObject: в RTF вытаскивается, но вся разметка сползает, а в метафайл опять только первая страница. Кто нибудь знает как бороться с этим проклятием?



Страницы: 1 вся ветка

Текущий архив: 2009.10.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.029 c
2-1251199307
Fr
2009-08-25 15:21
2009.10.25
Выделение слова в строке TMemo


15-1250843051
@!!ex
2009-08-21 12:24
2009.10.25
Как получить историю посещения браузеров?


10-1160553379
Alex_KV
2006-10-11 11:56
2009.10.25
Не паботает Invoke


2-1250865488
Л.Д.
2009-08-21 18:38
2009.10.25
TListView


15-1251140688
Kerk
2009-08-24 23:04
2009.10.25
Предлагаю эти слова эпиграфом в потрепаловке повесить