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

Вниз

Как сделать рассылку одного сообщения нескольким машинам?   Найти похожие ветки 

 
serg128   (2004-07-30 15:20) [0]

Делаю так:

   AnsiString InpStr = Info.GetElement(0);
//    ShowMessage(InpStr);
   AnsiString txt = InpStr.SubString(InpStr.Pos("#")+1, InpStr.Length()-InpStr.Pos("#"));

   AnsiString IPstr = InpStr.SubString(1, InpStr.Pos("#") -2 );
   AnsiString tmpIP; // ïåðåìåííàÿ äëÿ îäèíî÷íîãî IP àäðåñà
   while(IPstr.Length())
   {
     tmpIP = IPstr.SubString(1, InpStr.Pos(";")-1);
     IPstr.Delete(1, InpStr.Pos(";"));
     TClientSocket *ClientSocket = new TClientSocket(this);
     ClientSocket->Port = 6002;
     ClientSocket->Address = tmpIP;
     ClientSocket->Active = true;
     ClientSocket->Open();
     Application->ProcessMessages();
     Sleep(100);
     ClientSocket->Socket->SendText(txt);
     Application->ProcessMessages();
     ClientSocket->Active = false;
     ClientSocket->Close();
     delete ClientSocket;
   }
 }

И впринципе работает, но плоховато (иногда сообщения не доходят). Подскажите плиз, в чем дело?


 
VMcL ©   (2004-07-30 15:53) [1]

>>serg128  (30.07.04 15:20)

Режим блокирующий?


 
serg128   (2004-07-30 16:15) [2]

нет


 
VMcL ©   (2004-07-30 17:24) [3]

>>serg128  (30.07.04 16:15) [2]

Тогда с чего ты взял, что после вызова ClientSocket->Open(); сокет сразу готов принимать данные?


 
serg128   (2004-07-31 12:34) [4]

Если ты посмотрел на код, то должен был увидеть: он ОТПРАВЛЯЕТ , а не принимает сообщение.


 
Verg ©   (2004-07-31 13:18) [5]


> [4] serg128   (31.07.04 12:34)
> Если ты посмотрел на код, то должен был увидеть: он ОТПРАВЛЯЕТ
> , а не принимает сообщение.


Тем не менее, сути замечания ты не понял.

В неблокирующем (асинхронном) режиме ClientSocket->Open(); инициирует  открытие соединения (начинает процесс установления соединения). Т.е. после вызова этого метода вовсе не обязательно, что сокет уже установил соединение. Только поле возникновения события OnWrite можно начинать попытки отправить данные по установленному соединению.



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

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

Наверх




Память: 0.48 MB
Время: 0.022 c
3-1094920725
Master Kolyan
2004-09-11 20:38
2004.10.10
Организация виртуальной памяти используя принципы работы БД


3-1095014941
еще один Виктор
2004-09-12 22:49
2004.10.10
формат даты в фильтре


3-1095166277
Koala
2004-09-14 16:51
2004.10.10
Вопрос по SQL запросу


3-1094638324
Zif
2004-09-08 14:12
2004.10.10
Как посчитать количество всех строк...


1-1095775737
hgd
2004-09-21 18:08
2004.10.10
Как залить Bitmap одним цветом?