Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MSWord: save to stream as plain text [D6, MSSQL]


BPK ©   (2005-10-10 13:01:00) 

Есть TOLEContainer, содержащий документ MSWord. С помощью SaveToStream можно запихать документ в таблицу MSSQL Server, в поле типа image. Но нужен ещё один дубль, в другом, текстовом поле, в виде обычной строки.
Заставить MSWord сохранить документ на диске как plain text - проще простого, заставить его запихать plain text в буфер обмена Windows - тоже несложно, а вот как запихать plain text в TMemoryStream так, чтобы не затрагивать ни диск, ни буфер обмена?


BPK   (2005-10-11 13:15:00) [1]


> Digitman ©   (11.10.05 09:13) [14]
>
> тогда уж лучше в XML-формате сохранять .. если, конечно
> же, речь идет об MSOffice2003/XP ..
>
> при этом не потребуется доп.поле - XML-документ можно будет
> и открыть в Ворде и осуществлять в нем полнотекстовый поиск
> без использования Ворда


Ну так подскажи скорее, как получить XML от MSWord, не делая промежуточных сохранений на диск.


Digitman   (2005-10-11 09:13:00) [2]


> BPK ©   (10.10.05 16:19) [13]


тогда уж лучше в XML-формате сохранять .. если, конечно же, речь идет об MSOffice2003/XP ..

при этом не потребуется доп.поле - XML-документ можно будет и открыть в Ворде и осуществлять в нем полнотекстовый поиск без использования Ворда


BPK   (2005-10-10 16:19:00) [3]


> Desdechado ©   (10.10.05 14:47) [12]
> автору, видимо, нужно для полнотекстового поиска или превьюхи
> перед открытием в ворде

Именно :) Молодец!


Desdechado   (2005-10-10 14:47:00) [4]

автору, видимо, нужно для полнотекстового поиска или превьюхи перед открытием в ворде


Digitman   (2005-10-10 14:09:00) [5]

какого ж ... ты нес околесицу в вопросе ?)


BPK   (2005-10-10 14:04:00) [6]

Всё оказалось гораздо проще!
Можно прочитать из MSWord свойство ActiveDocument.Range.Text


Digitman   (2005-10-10 14:03:00) [7]


> BPK


> в .. текстовом поле.. в виде обычной строки


как ты вообще себе это это представляешь - содержимое СОМ-хранилища в виде "обычной строки" ?


Val   (2005-10-10 13:55:00) [8]

>[6] BPK ©   (10.10.05 13:49)
плохо. краткость - сестра таланта.


BPK   (2005-10-10 13:51:00) [9]

Попробую поковыряться с COM Storage. Может быть поможет.


BPK   (2005-10-10 13:49:00) [10]


> Val ©   (10.10.05 13:19) [3]
> TStringStream?

Не работает. Error.


Курдль   (2005-10-10 13:24:00) [11]

Вот же засада - а я лихорадочно искал фрагмент рабочего кода именно Word именно с OleContainer. Правда не для MS SQL, а для Sybase ASA (в котором есть BLOB). Так помогать, или нет? Я не обидчивый.


BPK   (2005-10-10 13:20:00) [12]

Курдль, до свидания. Вы мне не помощник. Всё, что нужно, есть в вопросе.


Ega23   (2005-10-10 13:19:00) [13]

И зачем image, если есть BLOB?

Интересно... А где это в MS SQL есть BLOB??????
Лично мне известны только image, text и ntext....


Val   (2005-10-10 13:19:00) [14]

TStringStream?


Курдль   (2005-10-10 13:11:00) [15]

Цель-то какая? И зачем image, если есть BLOB?
И что такое "plain text" и зачем он здесь нужен?


Наверх

Титульная страница Поиск, карта сайта Написать письмо