Winsock fejl

Tags:    delphi

<< < 12 > >>
Hej,

Jeg er ved at lave et simpelt chat program. når klienten connecter til serveren skal serveren lægge klientens ip ind i en listbox.

Når jeg connecter til serveren får jeg fejlen: "10057".

kode til serverdelen:
Fold kodeboks ind/udKode 


kode til klient delen:
Fold kodeboks ind/udKode 


Klienten connecter til den rigtige port, og både serversocket og klientsocket er aktive!

Hvad gør jeg for at slippe for den fejl?

mvh
Lars



11 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
jeg er som sagt ikke bekendt med de implementationer af de sockets du bruger så jeg kan desværre ikke lige hjælpe dig der...

server socketen skal sættes på listen mode således at den kaster et event når en klient prøver at blive accepteret. umiddelbart af det jeg kan læse om den tserversocket så er den i listenmode når active er sat til true hvilket er lidt underligt.

Prøv og kast en exception i dens onaccept og se om der overhovedet bliver registeret en clientsocket der prøver at connecte



10057 er WSAENOTCONN

det betyder at en af dine sockets ikke er connectede. jeg har ikke lige socket komponenterne men skal du måske ikke sige:

clientsocket1.connect;
clientsocket.active := true;

istedet for?



Jeg får fejlen
[Error] Unit1.pas(60): Undeclared identifier: 'connect'

når jeg bruger dette på klientdelen:
Fold kodeboks ind/udKode 


mvh
Lars



så prøv
clientsocket1.open;



Giver stadig samme winsocket fejl!

mvh
Lars



vent lidt. hvilken del får fejlen? serveren eller clienten? hvis det er clienten kan det være at du glemmer at acceptere clienten på serveren når den prøver at connecte.

Hvis det er serveren så er den nok ikke sat til at listen'e



det er på serveren fejlen kommer.
Serverkoden er her:
Fold kodeboks ind/udKode 


Klientkoden er her:
Fold kodeboks ind/udKode 


mvh
Lars



Hvordan sætter jeg serveren til at listene?

mvh
Lars



Den triggede slet ikke onaccept..
Har du nogen andre idéer?

mvh
Lars



Jeg skulle bare anvende socket.remoteaddress istedet for serversocket1.socket.remoteaddress..

tak for hjælpen jeppe!

mvh
Lars



<< < 12 > >>
t