Тема: Сеть
Показать сообщение отдельно
Старый 25.01.2011, 16:57   #2
DStalk
Разработчик
 
Аватар для DStalk
 
Регистрация: 27.06.2009
Адрес: Рязань-Москва
Сообщений: 471
Написано 401 полезных сообщений
(для 1,072 пользователей)
Ответ: Сеть

strStream=AcceptTCPStream(svrGame)

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

Типа того:
svrGame=CreateTCPServer(8080) 

Type Users
  Field Stream
End type

If svrGame<>0 Then 
Print "Сервер запущен удачно." 
Else 
Print "Ошибка создания сервера." 
End 
End If 
 
While Not KeyHit(1)
;Здесь подключение новых потоков
strStream=AcceptTCPStream(svrGame) 
If strStream Then u.users=new users:u/stream=strStream

;Обработка уже подключенных потоков
For u.users = each users
  ;Здесь еще нужна проверка на отключения потока, не помню как писать - блица под рукой нет...
  If readavail(u/stream) Then 
    Print ReadString$(u/stream)
  End If
next
Wend 
End
__________________
galaxies.su | dstalk.ru
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
MOrtAl44444 (26.01.2011)