![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
![]() Два компьютера. (допустим) Один компьютер x, а другой y. На обоих есть и запущена эта программы. Как передавать на с одной программы компьютера x другой компьютера y, и обратно? Что-то типа чато, но передаваться будут координаты.
|
#2
|
||||
|
||||
![]() Я делаю это с помощью компонента TSocketServer/Client. В Delphi7 установить: delphi7\bin\dclsockets70.bpl. Компоненты>Установить пакет, в окне кликай на "Добавть" ищи по этому пути. После установки они появятся во вкладке Internet.
сервер: Код:
..... procedure TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket); //Принятие текста var s:string; begin s:=Socket.ReceiveText; ShowMessage(s); end; ... procedure TForm1.Button1Click(Sender: TObject); //Посылка всем var i:integer; s:string; begin s:='Delphi'; for i := 0 to ServerSocket1.Socket.ActiveConnections-1 do ServerSocket1.Socket.Connections[i].SendText(s); end; ... Код:
.... procedure TForm1.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket); //Принятие от сервера var s:string; begin s:=Socket.ReceiveText; ShowMessage(s); end; ... procedure TForm1.Button1Click(Sender: TObject); //Посылка var s:string; begin s:='Delphi'; ClientSocket1.Socket.SendText(s); end; ... ![]() |
#3
|
||||
|
||||
![]() Я правильно понял, что для сервера одна прога , а для клиенты другая?
|
#4
|
|||
|
|||
![]() Не совсем. Тебе никто не мешает и сервер и клиента реализовать в одной программе. Более того, у тебя одна прога может слать сама себе сообщения.
ЗЫ. Я бы делал через Indy. |
#5
|
||||
|
||||
![]() А как через Indy? И можно ли так, чтобы я как бы создавал сервак, а мой друг подключался и мы играли? (я делаю мини игру)
|
#6
|
|||
|
|||
![]() Ну если тебе передавать какие-то данные просто, то используй TCmdTCPServer/TCmdTCPClient (кажется так называются). Они удобны тем, что ты просто задаешь команды и работвешь уже с данными. Если будешь передавать бинарные данные, то запакуй их в Base64 (Компоненты соответсвующие у индюка есть). В программе при старте выбираешь режим - клиент или сервер. Все.
Да, демки можно посмотреть на www.indyproject.org. |