Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.06.10;
Скачать: [xml.tar.bz2];

Вниз

Сетевое приложение   Найти похожие ветки 

 
News   (2007-05-18 14:25) [0]

Здравствуйте! Пытаюсь разобраться с написанием сетевых приложений в Delphi, набрал простенький код, но он не работает. Подскажите, пожалуйста, что я делаю не так?

Код для клиента:unit Unit2;
interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, IdComponent, IdUDPClient, IdUDPServer, IdBaseComponent, IdUDPBase;

type
 TForm2 = class(TForm)
   Edit1: TEdit;
   Button1: TButton;
   IdUDPClient1: TIdUDPClient;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form2: TForm2;

implementation
uses Server;
{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);
begin
IdUDPClient1.Active:=true;
IdUDPClient1.Send(Edit1.Text);
IdUDPClient1.Active:=false;
end;
end.

Код для сервера:
unit Server;
interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, IdComponent, IdUDPServer, IdUDPClient, IdSocketHandle,
 IdBaseComponent, IdUDPBase;
type
 TForm1 = class(TForm)
   IdUDPServer1: TIdUDPServer;
   Memo1: TMemo;
   procedure IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
     ABinding: TIdSocketHandle);
 private
   { Private declarations }
 public
   { Public declarations }
 end;
var
 Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}

procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
 ABinding: TIdSocketHandle);
begin
 Memo1.Clear;
 Memo1.Lines.LoadFromStream(AData);
end;
end.
Суть в том, чтобы при нажатии кнопки на форме клиента введенная в эдит строка выводилась в мемо у сервера, но при запуске либо вообще ничего не происходит, либо вылетает ошибка "Error Socket #100449". В свойстве Bindings я задаю IP-адрес 127.0.0.1, порт 0.


 
DVM ©   (2007-05-18 14:28) [1]


> В свойстве Bindings я задаю IP-адрес 127.0.0.1, порт 0.

То есть ты пытаешься открыть все порты? А часть из них занята. Сервер не стартует. Открывай только нужные тебе порты.


 
News   (2007-05-18 15:03) [2]


> Открывай только нужные тебе порты.

Какие? Дело в том, что я вообще не знаю, какие нужно открывать.


 
DVM ©   (2007-05-18 15:05) [3]


> Дело в том, что я вообще не знаю, какие нужно открывать.

Бери любой выше 1000, только одинаковый у клиента и сервер


 
Сергей М. ©   (2007-05-18 15:07) [4]


> я вообще не знаю, какие нужно открывать


Ну так в таком случае не трогай св-во Bindings вообще.


 
News   (2007-05-18 17:02) [5]


> Бери любой выше 1000, только одинаковый у клиента и сервер

Взял 6000, ничего не изменилось.


 
Savek   (2007-05-18 17:39) [6]

На сервере сокет кто будет отрывать?


 
Новичек ©   (2007-05-18 17:47) [7]

Имелось в виду открывать :-)


 
News   (2007-05-18 19:16) [8]

Понимаете, я совсем-совсем новичок, и многого не знаю. Как открыть сокет на сервере?


 
turbouser ©   (2007-05-18 20:45) [9]


> News   (18.05.07 19:16) [8]

Посмотрите уже примеры.
http://www.indyproject.org/Sockets/Demos/index.EN.aspx



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.06.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.044 c
2-1179481989
LoRd1
2007-05-18 13:53
2007.06.10
Завершение работы (удаление) приложения


15-1177890843
Бедный_Чел
2007-04-30 03:54
2007.06.10
Нужен windows сервер


11-1161345725
Thaddy
2006-10-20 16:02
2007.06.10
Vista OpenSaveDialog


15-1179440350
РТР
2007-05-18 02:19
2007.06.10
Зеленый чай


2-1179777553
greengeneral
2007-05-21 23:59
2007.06.10
Смешивание цветов RGB





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский