[Delphi] - ServerSocket

0

W procedurze:
ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket)
dzięki Socket.SendText() można natychmiastowo odpwiedzieć
Clientowi który wysłał tekst, jednak jeśli nie jest to możliwe
to czy da się jakoś pobrać jego numerek żeby potem wstawić go
do SereverSocket1.Socket.Connections[TUTAJ NUMEREK].SendText() ?--__________________________________
Pozdrawiam...
piechnat

0

Można każdego klienta wpisywać do tablicy lub TStringList, a potem pobierać index według tekstu.---------------------------
Delphi 6

Pozdrówka

0

thenkles napisał:
Można każdego klienta wpisywać do tablicy lub TStringList, a potem pobierać index
Dobre i to :) thx--__________________________________
Pozdrawiam...
piechnat

0

&gtMożna każdego klienta wpisywać do tablicy lub TStringList, a potem pobierać index
&gtDobre i to :) thx

Tyle że jak się odpali dwa Clienty z jednego IP to się robi problem :(
nie ma czegoś bardziej unikalnego niż IP ?--__________________________________
Pozdrawiam...
piechnat

0

&gtTyle że jak się odpali dwa Clienty z jednego IP to się robi problem :(
&gtnie ma czegoś bardziej unikalnego niż IP ?
&gt
Zrób prockę zeby mozna bylo odpalic program tylkow jednym egz.
A moze zamiast IP, niech sockety slą adres MAC ?[email protected]
POZDRAWIAM
DELPHI RULEZ
NIECH MOCz BĘDZIE Z WAMI
:-))

0

A jak odczytać IP klienta?
MBK

0

&gtZrób prockę zeby mozna bylo odpalic program tylkow jednym egz.
Kompromis to ostatnie wyjście :)
&gtA moze zamiast IP, niech sockety slą adres MAC ?
A czy ten Mac (Co To ?) da się odczytać z procedury
onClientRead ?
--__________________________________
Pozdrawiam...
piechnat

0

Nie musisz tam zapisywać IP. Jest taka fajna właściwość TSocket.SocketHandle.---------------------------
Delphi 6

Pozdrówka

0

thenkles napisał:
Nie musisz tam zapisywać IP. Jest taka fajna właściwość TSocket.SocketHandle.

Dokładnie tego mi było trzeba {brawo}

Tyle że tak jeszcze sobie pomyślałem à propos TStringList
Czy to zajmuje dużo pamięci ? (Bo uzywam w serverze takich dwóch)
Bo to jest naprawdę bardzo funkcjionalne i łatwe w obsłudze,
czy może nie ma jakiegoś TIntegerList albo TBooleanList
albo czy nie da się takiego zrobić ?
Albo może dwuwymiarowego TStringList?--__________________________________
Pozdrawiam...
piechnat

0

Ktoś chyba pisał o typie TList, w którym można przechowywać wszystko, ale nie wiem, jak to wyglada w praktyce.---------------------------
Delphi 6

Pozdrówka

0

Pokombinowałem i napisałem coś takiego:

type
telement=record
costam, costam2:string;
end;

type
pelement=^telement;

var
lista:tlist;

procedure TForm1.Button1Click(Sender: TObject);
var
rec:pelement;
begin
new(rec);
rec.costam:=edit1.Text;
rec
.costam2:=edit2.Text;
lista.Add(rec);
paint;
end;

procedure TForm1.FormPaint(Sender: TObject);
var
i:integer;
rec:pelement;
begin
for i:=0 to lista.Count-1 do
begin
rec:=lista[i];
canvas.TextOut(10, i20+4, rec.costam);
canvas.TextOut(80, i
20+4, rec</sup>.costam2);
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
lista:=tlist.Create;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
i:integer;
rec:pelement;
begin
for i:=0 to lista.Count-1 do
begin
rec:=lista[i];
dispose(rec);
end;
lista.Free;
end;

Delphi 6

Pozdrówka

0

Jeszcze raz dzięki :-) --__________________________________
Pozdrawiam...
piechnat

0

PIECHNAT - MAC jest to adres karty sieciowej, kazda karta sieciowa ma jeden adres MAC, powstaje on w momencie jej produkcji, jest unikalny dla kazdej karty sieciowej, na ten numer sklada sie numerek producenta (kazdy producent ma swoj unikalny numer) model karty, itp. itd. mam nadzieje ze opowiedzialem na Twoje pytanie... --Lardux

1 użytkowników online, w tym zalogowanych: 0, gości: 1