Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2007, 23:00   #1
DOLBY
Форумчанин
 
Аватар для DOLBY
 
Регистрация: 12.12.2007
Сообщений: 121
Сообщение TcpClient и TcpServer

Решил написать Клиент-Сервер с помощью вышеуказанных компонентов...
Для начала надо было разобраться как отправлять-получать строки... Так как нету домашней сети, то взял ip-адрес - 127.0.0.1 (пробовал вставлять внешний ip, всё равно результат не поменялся), порт - 5000.
запускаю 2 раза прогу, в одной меняю текст в edit1, жму на кнопку, но почему-то сообщение не отсылается... кто знает в чём проблема помогите пожалуйста...

Вот весь код программы..
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Sockets, ExtCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    ser: TTcpServer;
    cli: TTcpClient;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure serAccept(Sender: TObject;
      ClientSocket: TCustomIpClient);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;


var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 ser.Active:=true;
 cli.Active:=true;
 ser.LocalHost:='127.0.0.1';
 ser.LocalPort:='5000';
 cli.RemoteHost:='127.0.0.1';
 cli.RemotePort:='5000';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 if cli.Connect then
  begin
   cli.Sendln(edit1.Text);
   cli.Disconnect;
  end;
end;

procedure TForm1.serAccept(Sender: TObject;
  ClientSocket: TCustomIpClient);
var s:string;
begin
 s:=clientsocket.Receiveln;
 edit1.Text:=s;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
 ser.Active:=false;
 cli.Active:=false;
end;

end.
Компьютеры - вещь слишком сложная, чтобы работать в принципе. Поэтому то, что они работают хоть как-то, уже чудо.
DOLBY вне форума Ответить с цитированием
Старый 15.12.2007, 23:02   #2
DOLBY
Форумчанин
 
Аватар для DOLBY
 
Регистрация: 12.12.2007
Сообщений: 121
По умолчанию

и ещё вопрос: есть ли наиболее удобные компоненты для таких целей?
если есть, то подскажите пожалуйста как с ними работать...
Компьютеры - вещь слишком сложная, чтобы работать в принципе. Поэтому то, что они работают хоть как-то, уже чудо.
DOLBY вне форума Ответить с цитированием
Старый 16.12.2007, 00:04   #3
PAVEL315
Форумчанин Подтвердите свой е-майл
 
Аватар для PAVEL315
 
Регистрация: 18.11.2006
Сообщений: 172
По умолчанию

http://pblog.ru/?p=91
дык!
PAVEL315 вне форума Ответить с цитированием
Старый 16.12.2007, 18:37   #4
Рустам
Форумчанин
 
Регистрация: 04.07.2007
Сообщений: 260
По умолчанию

попробуй сначала устанавливать IP и порты, а потом активировать!
Хорошо не там, где нас нет, а там, где нас еще небыло!!!
Рустам вне форума Ответить с цитированием
Старый 16.12.2007, 19:48   #5
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

лучшие компоненты, это API WinSock :D
Почитайте статьи, их довольно много про сокеты в дельфи
BOBAH13 вне форума Ответить с цитированием
Старый 17.12.2007, 10:43   #6
DOLBY
Форумчанин
 
Аватар для DOLBY
 
Регистрация: 12.12.2007
Сообщений: 121
Радость

спасибо всем, кто мне помог, проблему решил сам, оказывается не надо было писать "cli.active:=true;"
Компьютеры - вещь слишком сложная, чтобы работать в принципе. Поэтому то, что они работают хоть как-то, уже чудо.
DOLBY вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[TcpClient, TcpServer] или [ServerSocket, ClientSocket] работа через прокси DOLBY Работа с сетью в Delphi 2 17.09.2009 05:46
Передача файлов(exe) при помощи TCPServer и TCPClient Air Работа с сетью в Delphi 6 26.12.2008 23:26
Com Объекты и TcpServer part13an Работа с сетью в Delphi 0 23.07.2008 16:14
Serversocket,clientsocket и TCPserver, TcpClient prizrak1390 Компоненты Delphi 2 04.02.2008 08:10
TCPServer и TCPClient Antoha Работа с сетью в Delphi 19 06.10.2007 12:01