информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
За кого нас держат?Страшный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
эээ... а поподробней? 16.02.05 12:33  Число просмотров: 1762
Автор: Duke Статус: Незарегистрированный пользователь
<"чистая" ссылка>
<programming>
передача информации в MS Word 15.02.05 14:35  
Автор: Duke Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Мне надо передавать значения в вордовские документы из С++ Builder 6, как это можно сделать? Кажется был способ в местах вставки значений писать что-то типа %имя_переменной а потом туда значения подставлять..? Сейчас пытаюсь использовать OLE но упираюсь в недостаток информации по работе билдера с OLE...
Импортни библиотеку типов и вперед 15.02.05 17:46  
Автор: AS Статус: Незарегистрированный пользователь
<"чистая" ссылка>
эээ... а поподробней? 16.02.05 12:33  
Автор: Duke Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Подробней 16.02.05 16:28  
Автор: Neznaika <Alex> Статус: Member
<"чистая" ссылка>
Eсли мне не изменяет склероз, то примерно так:
1) Project -> Import Type Library
2) Выбираем из списка "Microsoft Word 10.0 Object Library"
3) Создаем "WordApplication"
4) etc..
итак.. 16.02.05 17:50  
Автор: Duke Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Eсли мне не изменяет склероз, то примерно так:
> 1) Project -> Import Type Library
> 2) Выбираем из списка "Microsoft Word 10.0 Object Library"
> 3) Создаем "WordApplication"
> 4) etc..
ну.. зачем это импортировать я так и не понял...
вобщем я делаю так:

Variant WordAppl;
Variant Docs;
Variant Doc;
Variant BMs;
Variant BM;
Variant Range;

WordAppl = Variant::CreateObject("Word.Application");
WordAppl.OlePropertySet("Visible", Variant(true));
Docs = WordAppl.OlePropertyGet("Documents");
Docs.Exec(Procedure("Open")<<ExtractFilePath(Application->ExeName)+"\\äî âîñòðåáîâàíèÿ.doc");
Doc=WordAppl.OlePropertyGet("ActiveDocument");
BMs=Doc.OlePropertyGet("Bookmarks");

BM=BMs.Exec(Procedure("Item")<<"MY_BOOKMARK");
BM.Exec(Procedure("Select")); -- здесь вылетает.. так как строкой выше BM почему-то присваивается -1 вместо Bookmark..

Range=WordAppl.OlePropertyGet("Selection");
Range.OlePropertySet("Text","mytext");

чего можно сделать?...
как эту чертову закладку выделить чтобы вместо нее свой текст вставить?!!!!
Через OLE - не советую. 16.02.05 22:51  
Автор: Neznaika <Alex> Статус: Member
<"чистая" ссылка>
Через OLE - не советую.
Замучаешься.

> ну.. зачем это импортировать я так и не понял...
>
MS Word является COM-cервером, поэтому ты получаешь доступ ко всем методам, свойствам, и событиям, которые он предоставляет.
А как конкретно мне получить доступ к этим объектам?... 17.02.05 10:27  
Автор: Duke Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Через OLE - не советую.
> Замучаешься.
>
> > ну.. зачем это импортировать я так и не понял...
> >
> MS Word является COM-cервером, поэтому ты получаешь доступ
> ко всем методам, свойствам, и событиям, которые он
> предоставляет.
А как конкретно мне получить доступ к этим объектам?...
Я сделал импорт в новый Unit...
Вот есть в структуре объектов MS Word объект Application например, как мне получить к нему доступ?.. и как работать дальше (в смысле с другими объектами Word) ???
Пожалуйста помогите чайнику... очень надо...
Пример для Word97 17.02.05 22:38  
Автор: Neznaika <Alex> Статус: Member
<"чистая" ссылка>
// Это не мой пример, но думаю - автор на меня не обидется
procedure TForm1.Button1Click(Sender: TObject);
var
  Shablon:OleVariant;
  word:_ApplicationDisp;
begin
  Shablon:=ExtractFilePath(Application.EXEName)+'shablon.DOC';

  word := CoWordapplicaTion.Create as _ApplicationDisp;
  (Word.Documents as DocumentsDisp).Open(Shablon,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam,
             EmptyParam,EmptyParam,EmptyParam,EmptyParam);

  showmessage((Word.Application as _application).Get_Name+#13+
  ((Word.Application as _application).ActiveDocument as _documentDisp).Path );
  word.quit(EmptyParam,EmptyParam,EmptyParam);
end;


---
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach