Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   ДЕЛЬФИ - Чат на Udp (https://forum.antichat.xyz/showthread.php?t=74108)

strab 18.06.2008 13:09

ДЕЛЬФИ - Чат на Udp
 
Народ, написал Чат, на UDP/ip,кароче говоря проблема такая, запускаем прогу на двух компах, фаервол регестрирует исходящюю активность программы... а входящюю не регестрирует, соответсвенно, и сообщения с другого компа не доходят в чём ошибка подскажите, вот код:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdUDPServer, IdBaseComponent, IdComponent, IdUDPBase,
IdUDPClient, StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Edit2: TEdit;
Button2: TButton;
IdUDPClient1: TIdUDPClient;
IdUDPServer1: TIdUDPServer;
memo1: TMemo;
procedure IdUDPServer1UDPRead(Sender: TObject; AData: TStream
);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}


procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream );
var
sts:Tstringstream;
s:string;
begin
sts:=tstringstream.Create('');
sts.Copyfrom(Adata,adata.size);
memo1.lines.add('>>> '+sts.datastring);
sts.free;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
idudpclient1.Send(edit1.text);
memo1.Lines.Add(edit1.text);
edit1.Text:='';
end;

end.

ХЗ в чём трабла

Dober'man 18.06.2008 16:36

Цитата:

написал Чат
М.Фленов. Delphi глазами хакера.
Как-то не красиво получилось!!!
Цитата:

ХЗ в чём трабла
Скатывать надо правильно!!!
Код:

procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
 ABinding: TIdSocketHandle );
var
sts:Tstringstream;
s:string;
begin
sts:=tstringstream.Create('');
sts.Copyfrom(Adata,adata.size);
memo1.lines.add(ABinding.PeerIP+'>>> '+sts.datastring);
// Перенаправление сообщения дальше
ABinding.SendTo(ABinding.PeerIP, ABinding.PeerPort, s[1], length(s));
sts.free;
end;
(с) Фленов

И всё работает!!!

strab 18.06.2008 17:01

Что не красивога та? :))))
Вот с помеченными тобой строчками, эта прога не работает!!!! выдаёт ошибку

undeclared idintifier ('tidsockethandle').....

А когда я вырезал помеченные строки, работать прога стала, но имея толкьо исходящюю активность, возможно в маршрутизаторах пакет теряется

strab 18.06.2008 17:57

Закрывайте тему в узесе надо было прописать пару библиотек, разобрался


Время: 06:52