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

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

DDE


Лана Розанова ©   (2002-02-25 12:01:00) 

Как соединиться с WORD-ом. Может вопрос неправильный, но нужен примерчик соединения через DDE с какими-нибудь программами.
СПАСИБО!!!


serg   (2002-02-25 17:31:00) [1]

этого не знаю.
я уперся в то , что негде взять список команд Worda
и на этом остановился. но в MSDN вроде такое описано.
посмотри пример, который с DELPHI идет. но кажется там все на OnChange построено.
такое реализовать - наверное это уже высший пилотаж.


Лана Розанова   (2002-02-25 16:11:00) [2]

Спасибо, все получилось.
А вот как сделать что-бы отображалось не тот текст, что задаем в макросе, а то что набираем?


Лана Розанова   (2002-02-25 16:02:00) [3]

Вообще хочется научиться работе с DDE.
А так мне надо будет сформировать общение моей программы с проектом WINCC. Вот так.


serg   (2002-02-25 14:41:00) [4]

Отправил.
А зачем тебе это вообще надо?


Лана Розанова   (2002-02-25 14:30:00) [5]

Ошибка 4598.
Хоть тресни, а пишет эту мульку.
Может на мыло мне скинешь проект Delphi?


serg   (2002-02-25 14:26:00) [6]

у меня такой ошибки не получается никак.
у меня 2000 сервер.


Лана Розанова   (2002-02-25 14:17:00) [7]

Сейчас снова попробую, а ошибка такая.
При запуске макроса, "Ошибка другого приложения", вот.


serg   (2002-02-25 14:15:00) [8]

Только что сделал все так как написал.
Все Ок.
наверное не так что то сделала.
Что за ошибка?


Лана Розанова   (2002-02-25 14:00:00) [9]

Не получается что-то. При запуске макроса пишет ошибку в другом приложении.
Что делать?


Лана Розанова   (2002-02-25 14:00:00) [10]

Не получается что-то. При запуске макроса пишет ошибку в другом приложении.
Что делать?


serg   (2002-02-25 13:44:00) [11]

Почитать можно в Helpe по VBA и в MSDN.

Поэтапно:
1.Открываешь Word.
2.Нажимаешь в нем Alt+F11(открывается редактор VBA)
3.Открываешь проект.
4.Набираешь:
sub MyFirstDDE
Dim TheCanel As Long
TheCanel = Application.DDEInitiate("DDEProject", "MyDDEServer")
Application.DDEPoke TheCanel, "MyDDEItem", "Текст,который передаешь в прогу"
Application.DDETerminate TheCanel
end sub

5.Открываешь DELPHI
6.Создаешь новый проект и называешь его DDEProject
7.кидаешь на форму TDdeServerConv.
8.называешь его (Name=) MyDDEServer
9.кидаешь на форму TDdeServerItem
10. устанавливаешь его сво-о ServerConv в MyDDEserver
11.называешь его MyDDEItem
12. делаешь у него обработчик
procedure MyDDEItem.OnPokeData(Sender:TObject);
begin
ShowMessage(MyDDEItem.Text);
end;

13.Запускаешь этот проект.
14.Переходишь в Word
15.Запускаешь макрос MyFirstDDE

Вот примерно так.Удачи


Лана Розанова   (2002-02-25 12:59:00) [12]

Миленький serg.
Так все сложно. Может поэтапно разберем эту тему. Или ты знаешь, где прочитать можно?


Лана Розанова   (2002-02-25 12:48:00) [13]

А вот как его, макрос, делать?
И вот это где надо писать?
Dim TheCanel As Long
TheCanel = Application.DDEInitiate(DDEServerAplName,DDEServerName)
Application.DDEPoke TheCanel, ...
Application.DDETerminate TheCanel

Так то все то, но я ужасно ничего не понимаю.


serg   (2002-02-25 12:39:00) [14]

если тебе надо из Word управлять другими прогами,
то в Word делаешь макрос, в котором исп. функции DDE...
Для DELPHI:
В проге на DELPHI тогда надо исп.TDdeServerConv,TDdeServerItem.
а в Word

Dim TheCanel As Long
TheCanel = Application.DDEInitiate(DDEServerAplName,DDEServerName)
Application.DDEPoke TheCanel, ...
Application.DDETerminate TheCanel

или это тоже не то?


Лана Розанова   (2002-02-25 12:30:00) [15]

Нет, это не то.
Так просто при запуске программы запускается еще и Word,
а вот как при наборе текста, текст отображался в моей программе???


serg   (2002-02-25 12:15:00) [16]

1. запускаешь Word.
2. кидаешь на форму TDdeClientConv.
у него DdeService = winword
и DdeTopic = system , например.
Все, подключение есть.

дальше начинаешь посылать команды.
Вот только где бы взять список команд?
Если достанешь, то кидани мне на мыло,пожалуйста.


Наверх

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