![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Jul 2007
Сообщений: 4
|
Доброго!
Такая проблема, есть сервер который создает для каждого нового клиента поток, и в этом потоке создается сокет. flash клиент конектиться нормально, но передачи данных нет. При отправке сообшения от flash клиента, данные отправляются частично, т.е. при попытке отправить тестовое сообщение "Hello world", данные доходят с 23 раза попытки отправить сообщение на сервер, причемстрока приходит не вся, а кусками, например(ello world, rld, ...) Может ли flash клиент работать с потоковыми сокетами, или только с асинхронными? ЗЫ При работе с асинхронными сокетами сообщения идут в обе стороны. сервер написан на C#, причем клоент написанный тоже на C#, работает без проблем... Последний раз редактировалось etc; 19.07.2007 в 18:56. |
|
|||||
|
Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
|
каким образом работаете? через netConnection.connect ?
И самописный сервер на сишарпе? Тут нужен морочный реверс инжиниринг. Наш сишный прог месяца полтора возился. Даже в доках osflash есть белые пятна (неидентифицированные моменты в протоколе rtmp).
__________________
#define true false //счастливой отладки, друзья |
|
|||||
|
Регистрация: Jul 2007
Сообщений: 4
|
Сервер самопальный, на сишарпе. Создаётся поток в котором крутится бесконечный цикл, с помощью TcpListener прослушиваю порт, при коннекте клиента(AcceptSocket) создаётся новый сокет в новом потоке и запускается ещё поток на чтение запись. вот и всё в принципе. Но получается вышеописанная канитель. Пробовал сделать на асинхронных сокетах, обмен идёт нормальный, но почемуто я сомневаюсь что они подойдут в дальнейшем.
Извиняюсь, но не понял: что такое реверс инжиниринг? Подскажи что такое. |
|
|||||
|
Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
|
Так ты, наверное, говоришь про xml/binary socket во флеше, да? Я с ним не работал, не скажу. Но вообще, самое вкусное - это NetConnection класс во флеше. Там всё что угодно есть, и нет ограничения на порты >1024. Но протокол rtmp по которому оно работает - закрытый, таким образом для организации работы придется поморочиться с распарсиванием всех видов пакетов. Реверс инжиниринг, в моем дилетантском понимании, заключается в том что ты идешь не от идеи к продукту а наоборот. То есть тебе придется ловить пакеты от флеша серверу, разбирать их и пытаться разобраться как работает протокол. Если ты конешно захочешь перейти с xmlsocket на netconnection -)
__________________
#define true false //счастливой отладки, друзья |
|
|||||
|
Регистрация: Jul 2007
Сообщений: 4
|
Да, использовал XMLSocket. Попробую покавырять NetConnection, если асинхронные сокеты в C# не удовлетворят моих потребностей.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 03:47. |
|
|
« Предыдущая тема | Следующая тема » |
|
|