Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2004.07.25;
Скачать: [xml.tar.bz2];

Вниз

Проблема с постом сообщений по TTcpSocket в D7   Найти похожие ветки 

 
empty ©   (2004-05-24 16:05) [0]

Пояснение к проблемме:

Создано тестовое приложение для передачи данных по сети для проверки передачи данных. Со свойством в TTcpServer и TTcpClient (BlockMode=bmNonBlocking) "асинхронная передача данных". При передачи данных возникают события которые свойственны для данных компонентов в часности у серверного компонента OnAccept, в нём необходимо выполнить операцию чтения из клиента информации. Т.е. кодом вышлядит примерно так :

procedure Form1.TcpServerAccept( Sender : TObject, ClentSocket : TTcpClient);

Var Mes : String;

begin
While MSG<>"" do
  begin
   Mes:=ClientSocket.ReadLn;
  end;  
end;

При этом в переменную постоянно присваивается значения которые в такой же последовательности были присланы от слиента к серверу. Так вот это событие возникает без проблем, но, !когда форма активна! в переменную не присваивается значение текста посланого от клиента и при изменения активности формы, сразу начинают приходить все сообщения которые были посланы. Тоесть при разнице свойства Active на форме с компонентом (а точнее приложении) чувствуется разница в доставке сообщения. Тоесть событие происходит а буфер сообщений постоянно пустой, и только при незначительных изменениях он начинает заполнятся, при каких мне сложно отследить и в принципе не представляется возможным... Прошу подсказать в чём может быть причина при изменении этого свойства.

С уважением Денис. (empty)


 
tesseract   (2004-05-25 09:23) [1]

Используй idTcpServer, стандартные дельфёвые компоненты глючат сильно. Заманаешься. Там вообще сложно понять что и когда ты получаешь.


 
nomshar   (2004-05-26 15:48) [2]

Слушай, ты во-первых, зачем в обработчике OnAccept заводишь цикл? У тебя же вся программа нафиг встанет.
А во-вторых. Дай код. Хотя там ничего сложного и можно в принципе обойтись и дельфишными компонентами.



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

Форум: "Сети";
Текущий архив: 2004.07.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.036 c
6-1085826074
eXtreme
2004-05-29 14:21
2004.07.25
Как узнать свободен ли порт?


3-1088495870
lapyri
2004-06-29 11:57
2004.07.25
Как отсортировать данные в DBGrid?


1-1089566673
XHelp
2004-07-11 21:24
2004.07.25
Заставить Делфи не показывать ошибки


8-1084306993
Рома
2004-05-12 00:23
2004.07.25
Уменьшение битмапа


9-1080207016
GrayFace
2004-03-25 12:30
2004.07.25
Преимущества DirectX перед Canvas + TBitmap.ScanLine





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский