![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
other_denis |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 12.5.2003 Репутация: нет Всего: нет |
Помогите пожалуйста!
Написал DDE сервер и DDE клиент. Запускаю DDE клиент, который в свою очередь запускает DDE сервер, а потом пытается с ним соединиться и проблема в том, что программа останавливается на DdeConnect(). Однако если из диспетчера задач закрыть DDE сервер, DdeConnec() возвращает ошибку DMLERR_NO_CONV_ESTABLISHED. Если же не запускать DDE сервер, то DdeConnect() сразу возвращат ошибку DMLERR_NO_CONV_ESTABLISHED. Где есть суслик :-) я никак не могу понять. Работаю в WinMe. |
|||
|
||||
other_denis |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 12.5.2003 Репутация: нет Всего: нет |
Проблема была в том, что я некоректно написал DDE сервер, а именно, использовал цикл while(fExit) для выхода из программы. В связи с чем приношу свои извинения за вышенаписанную просьбу о помощи.
if (DdeInitialize(...) {MessageBox(0,"Ошибка инициализации сервера","Error",MB_OK|MB_ICONSTOP);} else { //---------------------------------------------------------------------------- //если регистрация прошла успешно создаем дескрипторы объявленных ранее строк //---------------------------------------------------------------------------- //дескриптор строки с именем сервиса ServerCOMService hszServerCOMService = DdeCreateStringHandle(idInst,szServerCOMService,CP_WINANSI); . . . //---------------------------------------------------------------------------- //если все прошло успешно, регистрируем сервисы поддерживаемые приложением //---------------------------------------------------------------------------- DdeNameService(idInst,hszServerCOMService,(HSZ)NULL,DNS_REGISTER); if (DdeGetLastError(idInst)!=DMLERR_NO_ERROR) {MessageBox(0,"Ошибка регистрации сервисa","Error",MB_OK|MB_ICONSTOP); goto Exit;} //---------------------------------------------------------------------------- //если все прошло успешно, ожидаем когда DDE клиент отправит команду на завершение работы сервера //---------------------------------------------------------------------------- while(fExit); //---------------------------------------------------------------------------- . . . |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |