Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DDE с ожиданием, Надо чтобы DDE ждал, но не висел! 
:(
    Опции темы
Voron2
  Дата 4.5.2004, 06:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 4.5.2004
Где: Апатиты

Репутация: нет
Всего: нет



sad.gif Есть такая проблема: создаю в Ц++Билдере ДДЕ сервер, на нем толлько DDEServerConv, и клиент, который выполняет ExecuteMacro. Макрос отсылается нормально, проблема в другом! Если поставить WaitStat - false , макрос просто отсылается и программа идет дальше, а мне надо, чтобы клиент ждал завершения макроса, но если ставить WaitStat - true , то соединение умирает и сервер как бы бесконечно выполняет макрос.
Спасибо!
PM MAIL ICQ   Вверх
Tinto
Дата 16.5.2004, 08:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 13.1.2004

Репутация: нет
Всего: нет



День добрый Voron2! Я тоже занялся DDE. Необходимо одновременно подавать звук на LineOut и записывать с LineIn и строить графики звука по обеим каналам. Нашел программку, которая может это делать и имеет DDE. SpectraLAB называется. Вроде бы все пока работает, т.е открывается SpectraLAB, происходит Link с моей программой, а вот дальше я должен послать команду SpectraLAB и не получается. Что- то я делаю неправильно. У меня в программе след. код:
ShellExecute(Handle,"open","d:\\speclab\\bin\\softest",
NULL,NULL,SW_MINIMIZE);
while(!DdeClientConv1->SetLink("Softest","Data")) //"Softest"-Server name, "Data"-Topic name
++a;
Start->Caption = DdeClientConv1->DdeService; //Подтверждение связи клиент-сервер
DdeClientConv1->ExecuteMacro(EditMacro->Text.c_str(), true); //посылаю команду
и ничего не происходит. Я посылаю команду "Play", должно играть. И еще мне непонятно, должен ли я устанавливать DdeItem в DdeClientItem1. А также ServiceApp в DdeClientConv1. Я установил в ServiceApp - Sound1, имя моей программы? notify.gif



PM MAIL   Вверх
Voron2
Дата 31.5.2004, 21:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 4.5.2004
Где: Апатиты

Репутация: нет
Всего: нет



SetLink только задает параметры DDE!!!!!!!!!
После него поставь OpenLink()

baaa.gif Я собственно про это и спрашивал! WaitState можешь поставить в false, если сервер может выполнить твой макрос мгновенно, если же надо ждать то по идее ставишь в True, но тут как раз и получается, что сервер как бы бесконечно выполняет макрос, а DDE не отправит ни одной комманды, пока макрос не завершится!



DDEItem устанавливаешь только если нужно динамическое соединение (связь с итемом сервера)
ServiceApp поставь в "d:\\speclab\\bin\\softest", не надо будет ShellExecute
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0642 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.