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

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

DDE в сервисе. [D6, WinXP]


Michael ©   (2007-12-30 01:21:00) 

В тестовом приложении все работает отлично. В сервисе ругается когда создаю объект TDdeServerConv. Пробовал создать его вручную, но не в конструкторе а позже: вроде завелось, но DDE не работает. В чем может быть проблема?


ага   (2007-12-31 07:35:00) [1]


> 1. Неправильный вариант: сделать сервис работающим в user-
> mode и интерактивным. В этом случае там можно будет делать
> GUI

И нарваться на WinXP с FUS.

Реальный вариант только один, пункт 2 в > DrPass ©   (30.12.07 18:21) [3]. Причин несколько, и если привносимые Delphi еще можно более-менее легко преодолеть, то системное ограничение уже в общем случаенепреодолимо, и заключается оно вот в чем:
DDE работает через оконные сообщения, то бишь посылаемые именно специальному окну, не потоку. А такое сообщение дойдет только в том случае, если отправляющий поток и поток, создавший целевое окно, подключены к одному десктопу. И это уже нерешаемо в случае Terminal Service, через которые работает FUS.

PS Есть еще Net DDE, может с ним и можно чего-нибудь замутить, но я его не знаю. Не вижу никакого смысла в использовании DDE при наличии массы других средств, тем более, что MS давным-давно объявила DDE устаревшей.


DrPass   (2007-12-30 18:21:00) [2]


> Вопрос в том, как решить проблему DDE в сервисе.

1. Неправильный вариант: сделать сервис работающим в user-mode и интерактивным. В этом случае там можно будет делать GUI
2. Правильный вариант: не делать в сервисе DDE. Для обмена информацией существует СОМ, NamedPipes и т.д.


Michael   (2007-12-30 13:36:00) [3]

Понятно, что создание сервиса отличается от обычного приложения отсутствием GUI. Вопрос в том, как решить проблему DDE в сервисе.


Cj   (2007-12-30 12:05:00) [4]

в том, что при создании DDE создается окно DDEMlMon а в сервисе GUI - не делают


Наверх

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