Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.02.12;
Скачать: CL | DM;

Вниз

Как выйти из OnExecute?   Найти похожие ветки 

 
olevacho_ ©   (2005-11-01 21:22) [0]

Написал обработчик событий OnExecute для tidtcpserver
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
form2.show;
end;
По задуму нужно при получении сигнала из другого компа показать другую форму с оповещением и проиграть звуковой файл.
Результат такой что приложение зависает. При трасировке оказалось что обработчик OnExecute выполняется по циклу несколько раз. Как сделать так чтобы этот обработчик выполнялся 1 раз?
Вот код отправки сигнала из idtcpclient из другого компа

idTCPClient1.Port:=1031;
 idTCPClient1.Host:="192.168.1.13";
 idTCPClient1.Connect;
idTCPClient1.WriteLn("1");
 idTCPClient1.Disconnect;


 
Reindeer Moss Eater ©   (2005-11-01 22:50) [1]

Обработчик вызывается в контексте вторичного потока.
Делать какие-либо обращения оттуда к визуальным формам - запрещено минздравом.

По задуму нужно при получении сигнала из другого компа показать другую форму с оповещением и проиграть звуковой файл.

Ну и где здесь у тебя прием сигнала и его анализ?
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
form2.show;
end;


 
Eraser ©   (2005-11-02 01:18) [2]


> olevacho_ ©   (01.11.05 21:22)

Добавлю к [1], устанавливай Indy 10, иначе потом предстоит код переписывать.
http://www.indyproject.org/



Страницы: 1 вся ветка

Текущий архив: 2006.02.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.093 c
15-1137657413
Kerk
2006-01-19 10:56
2006.02.12
Поясните плиз вдовца


1-1137227153
мух
2006-01-14 11:25
2006.02.12
Скорость выполнения операций


15-1137997018
Ega23
2006-01-23 09:16
2006.02.12
И снова о сале


1-1136791731
beglec
2006-01-09 10:28
2006.02.12
Долгое копирование потока. Как решить?


15-1137266747
Piter
2006-01-14 22:25
2006.02.12
Тест на IQ