Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Есть сокетное клиент/серверное приложение. [D6, WinXP]


mrcat ©   (2002-04-29 17:39:00) 

Клиент пересылает серверу буфер -

TBuf = packed record
tbName, tbPass: array[0..15] of char;
end;

Проблема собственно в том, что данные, принимаемые на сервере не
всегда совпадают с переданными (обычно сервер получает не совсем то, что отправил клиент)

P.S. Клиент данные передает в режиме Blocking, сервер - NonBlocking, формат записи буфера и у клиента и у сервера одинаков...

Что я не так делаю? подскажите плиз...


cyborg   (2002-04-29 20:59:00) [1]

У вас видимо рекорд пакованая какая-то, наверное когда пустая запись, она одного размера, а когда заполненная, другого, следовательно у сервера она считается одного размера, а клиент посылает уже другого, честно говоря packed ни разу не использовал и что оно делает не знаю :-), может всё дело в ней, просто уберите может заработает.
Да и ещё :-), я заметил что в Дельфи, в отличие от Паскаля, нужно постоянно инициализировать переменные, иначе обязательно появятся глюки.


Digitman   (2002-04-29 18:02:00) [2]

А что, собственно, ты делаешь, чтобы можно было рассудить, "так" оно или "не так" ? Код-то где ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо