|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Мониторинг серверов cs 1.6
Не подскажете как сделать subj?
|
#2
|
||||
|
||||
есть такое, работает правда только по локалке (вроде), протокол тожа не помню, зато есть функция прибить сервер:
http://data.cod.ru/97710 Пишу программы за еду. __________________ |
#3
|
|||
|
|||
Я узнал, что нужно отослать запрос по UPD на мастерсервер, чтобы получить список серверов. Вот пример запроса:
Код:
0000 31 FF 30 2E 30 2E 30 2E 1.0.0.0. 0008 30 3A 30 00 00 0:0.. 1) Как собственно отослать запрос при помощи Indy? 2) Как принять ответ? И куда он сохранится? |
#4
|
||||
|
||||
не знаю где ты такое взял. у меня вот так опрос идет:
Код:
IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27015); Цитата:
Пишу программы за еду. __________________ |
#5
|
|||
|
|||
Мне все равно не очень понятно. Можешь дать пример кода?
|
#6
|
||||
|
||||
Код:
IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27010); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27011); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27012); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27013); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27014); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27015); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27016); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27017); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27018); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27019); IdUDPServer.Broadcast(#255#255#255#255'TSource Engine Query'#0, 27020); Пишу программы за еду. __________________ Последний раз редактировалось NumLock, 01.05.2011 в 10:34. |
#7
|
|||
|
|||
А как получить ответ сервера в файл\мемо?
|
#8
|
||||
|
||||
у TIdUDPServer событие OnUDPRead
Пишу программы за еду. __________________ |
#9
|
|||
|
|||
А что принимать-то?
|
#10
|
||||
|
||||
сервер ответит чем-нить подобным:
Цитата:
Пишу программы за еду. __________________ |
#11
|
|||
|
|||
Ты говоришь событие OnUdpRead, какой код для принятия ответа в мемо?
Я не понимаю, как считать ответ из OnUdpRead |
#12
|
||||
|
||||
ну что-то типа этого:
Код:
procedure TFormMain.IdUDPServerUDPRead(Sender: TObject; AData: TStream; ABinding: TIdSocketHandle); var c: Char; s: String; begin MemoServers.Lines.Add(ABinding.PeerIP+':'+IntToStr(ABinding.PeerPort)); while AData.Read(c, 1)<>0 do if (c>=#32) and (c<=#255) then s:=s+c; // s end; Пишу программы за еду. __________________ |
#13
|
|||
|
|||
можете пожалуйста выложить полную процедуру отправки данных на сервер.
да и еще: у меня в в процедуре IdUDPServerUDPRead вместо AData: TStream стоит AData: TBytes. как с этим быть? |