Ver Mensaje Individual
  #1  
Antiguo 09-10-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Reputación: 17
cmm07 Va por buen camino
Error Delphi Sockets

Hola, tengo un grave problema, estoy haciendo un chat con socket, conecto todos los socket al puerto 8092, y como ip localhost, todo bien conecta y todo perfecto, pero (siempre hay un pero ) al escribir un mensaje y al apretar en el boton Enviar (estoy enviando de Servidor a CLiente un mensaje) me marca el siguiente error:

:: Windows socket error: No se ha permitido una petición para enviar o recibir datos ya que el socket no está conectado y no se ha proporcionado ninguna dirección, al realizar el envío en un socket de datagramas por medio de una llamada sendto (10057), on API 'send' ::

pero cuando envio de Cliente a servidor lo hace perfecto, el problema está al enviar de servidor a cliente y se me desconecta de inmediato...

un poco de codigo:

Cliente Socket

propiedad OnRead

Código Delphi [-]
var
Listo,Comando: String;

begin
Comando:= Trim(Socket.ReceiveText);
Listo:= Copy(Comando, 0, 3);
Delete(Comando, 0, Pos('|', COmando));
if Listo = 'MSS' then begin
Memo1.Lines.Add(Comando);
Socket.SendText('LST|');
end;

if Listo = 'LST' then begin
Memo1.Lines.Add(MSGS);
end;

Servidor Socket:
propiedad OnCLientRead:
Código Delphi [-]
var
Listo,Comando: String;

begin
Comando:= Trim(Socket.ReceiveText);
Listo:= Copy(Comando, 0, 3);
Delete(Comando, 0, Pos('|', COmando));
if Listo = 'MSG' then begin
Memo1.Lines.Add(Comando);
Socket.SendText('LST|');
end;

if Listo = 'LST' then begin
Memo1.Lines.Add(MSGS);
end;

boton enviar:

Código Delphi [-]
if Button1.Enabled = False then begin
//CLiente
MSGS:= Edit2.Text;
CLiente.Socket.SendText('MSG|'+Edit1.Text+' : '+MSGS);
end else
begin
//Servidor
MSGS:= Edit2.Text;
Servidor.Socket.SendText('MSS|'+Edit1.Text+' : '+MSGS);
end;


gracias espero que me puedas ayudar...

vuelvo en la noxe gracias

54LU2
Responder Con Cita