Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 13.06.2015, 20:21   #1
eugenerock
 
Регистрация: 10.06.2015
Сообщений: 4
Репутация: 10
По умолчанию Socket, TCP, UDP

Доброго времени суток! В общем, ситуация следующая: там где выделено жирным курсивом надо прописать сообщение для отправки (string, real, integer и бинарные - естественно не все сразу, что-то одно). После получения сервер должен отправить полученное сообщение назад для проверки. Не понимаю как это реализовать.
Знающие гуру, подскажите.

Пишется на Socket, UDP, TCP. Покажите хотя бы пример и расстолкуйте все, пожалуйста. Дело очень срочное...


Код:

procedure TForm1.SendBtnClick(Sender: TObject);
var t1, t2,t3: TTime;
i,n,g,k:Integer;
ft:TextFile;
begin
 t1:=Now; 
t2:=t1; 
n:=100;
  AssignFile(ft,'Test.txt');
  Rewrite(ft);
  while   t2-t1<0.0005   do
  begin
    t3:=Now;
      for i :=1 to n do
      begin
       k:=0;
       for g:=1 to 1000000 do Inc(k);
       if k<0 then Break;
      end;
     t2:=Now;
     Writeln(ft, TimeToStr(t2-t3)+'   n='+inttostr(n));
     n:=n+100;
  end;
  CloseFile(ft);
end;


Последний раз редактировалось Stilet; 13.06.2015 в 20:53.
eugenerock вне форума   Ответить с цитированием
Старый 13.06.2015, 21:16   #2
min@y™
Цифровой кот
Профессионал
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Адрес: 1600, пенсильвания-авеню, п.г.т. верхний Вашингтонск, 8126 км от МКАД, от поста ГАИ - налево.
Сообщений: 7,649
Репутация: 2371

icq: 100500
skype: kick-ass
По умолчанию

отправлять-то что?
__________________
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума   Ответить с цитированием
Старый 13.06.2015, 22:49   #3
Stilet
Белик Виталий :)
Профессионал
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Адрес: Украина, Донецкая область, г. Краматорск
Сообщений: 57,957
Репутация: 6832
По умолчанию

http://www.programmersforum.ru/showthread.php?t=279467
Не?
__________________
I'm learning to live...
Stilet вне форума   Ответить с цитированием
Старый 14.06.2015, 12:37   #4
eugenerock
 
Регистрация: 10.06.2015
Сообщений: 4
Репутация: 10
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Не совсем. Идея вот в чем. Есть многопользовательский чат, написанный через TServerSocket и TClientSocket. По нажатии отправить: серверу отправляется кусок текста (определенного объема). В файл Test.txt записывается время и количество раз сколько данное сообщение было отправлено за определенный промежуток времени. Мне необходимо достичь такого результата, чтобы при отправке сообщения (естественно объем сообщения мы увеличиваем с каждой попыткой) программа выдала ошибку, чтоб не может передать данный объем информации за это время.
Вопрос в том как это реализовать. Не могу понять. Время в файле перестало считаться, только количество отправки.

Вот код всей процедуры:
Код:

procedure TForm1.SendBtnClick(Sender: TObject);
var t1, t2,t3: TTime;
i,n,g,k:Integer;
ft:TextFile;
begin
// проверка, в каком режиме находится программа
  If ServerSocket.Active=True then
// отправляем сообщение с сервера всем пользователям
    For i:=0 to ServerSocket.Socket.ActiveConnections-1 do
      ServerSocket.Socket.Connections[i].SendText('0['+TimeToStr(Time)+']  '+NikEdit.Text+':  '+TextEdit.Text)
  else
  t1:=Now; t2:=t1; n:=1;
  AssignFile(ft,'Test.txt');
  Rewrite(ft);
  while   t2-t1<0.0005   do
  begin
    t3:=Now;
      for i :=1 to n do
     begin
        TextEdit.Text:='Вы снова здесь, изменчивые тени,\ Меня тревожившие с давних пор,\'
        +'Найдется ль конец вам воплощение,\ Или остыл мой молодой задор?\ Но вы, как дым, надвинулись, ведения\'
        +'Туманом мне застлавши кругозор.\ Ловлю дыханье ваше грудью всею\ И возде вас душою молодею.\'
        +'Вы воскресили прошлого картины,\ Былые дни, былые вечера.\ Вдали всплывает сказкою старинной\'
        +'Любви и дружбы первая пора.\ Пронизанный до самой сердцевины\ Тоской тех лет и жаждою добра,\'
        +'Я всех, кто жил в тот полдень лучезарный\ Опять припоминаю благородно.\ Им, не услышать следующих песен'
        +'Кому я предыдущие читал.\ Распался круг, который был так тесен,\ Шум первых одобрений отзвучал.\'
        +'Непосвященных голос легковесен,\ И, признаюсь, мне страшно их похвал,\ А прежние ценители и судьи\'
        +'Рассеялись, кто где, среди безлюдья.'
      end;
     t2:=Now;
     Writeln(ft, TimeToStr(t2-t3)+'   n='+inttostr(n));
     n:=n+1;
     // отправляем сообщение с клиента
    ClientSocket.Socket.SendText('0['+TimeToStr(Time)+']  '+NikEdit.Text+':  '+TextEdit.Text);
    // отобразим сообщение в ChatMemo
    ChatMemo.Lines.Add('['+TimeToStr(Time)+']  '+NikEdit.Text+':  '+TextEdit.Text);
    // очищаем TextEdit
    TextEdit.Clear;
  end;
  CloseFile(ft);
end;

Понимаю, что ошибка просто решается, но видимо у меня не хватает знаний...

Последний раз редактировалось Stilet; 14.06.2015 в 13:06.
eugenerock вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скачивание файлов по UDP (или TCP) jekahm Работа с сетью в Delphi 3 25.03.2011 05:16
Идея связывания двух программ по TCP\UDP Ruschel Общие вопросы C/C++ 0 06.07.2010 13:23
перехват TCP и UDP пакетов prog.delphin Работа с сетью в Delphi 4 31.03.2010 13:21
В чём разница между TCP и UDP? TwiX Работа с сетью в Delphi 4 28.07.2009 23:54
UDP & Socket Shouldercannon Работа с сетью в Delphi 14 13.10.2008 17:23


23:17.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru