Ver Mensaje Individual
  #1  
Antiguo 09-09-2014
JuanOrtega JuanOrtega is offline
Miembro
NULL
 
Registrado: sep 2011
Posts: 130
Reputación: 13
JuanOrtega Va por buen camino
Problema con sockets

Hola , tengo el siguiente codigo que hice para una aplicacion que necesito que sea en consola :

Código Delphi [-]
program irc;

{$APPTYPE CONSOLE}
{$R *.res}

uses
  System.SysUtils, PerlRegEx, ScktComp;

var
  PerlRegEx1: TPerlRegEx;
  ClientSocket: TClientSocket;
  host: string;
  nickname: string;
  canal: string;
  code: string;

begin
  try

    host := 'localhost';
    nickname := 'tester';
    canal := '#test';
    code := '';

    ClientSocket := TClientSocket.Create(nil);
    ClientSocket.host := host;
    ClientSocket.Port := 6667;
    ClientSocket.Open;

    ClientSocket.Socket.Write('enviando informacion');

    if ClientSocket.Socket.Connected = True then
    begin
      Writeln('Connected!');
      while (1 = 1) do
      begin
        code := ClientSocket.Socket.Read();
        if not(code = '') then
        begin
          Writeln(code);
        end;
      end;
    end
    else
    begin
      Writeln('Error');
    end;
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;

end.

El problema son dos lineas :

Primero :

Código Delphi [-]
ClientSocket.Socket.Write('enviando informacion');

Que me da el siguiente error :

[DCC Error] irc.dpr(30): E2010 Incompatible types: 'NativeInt' and 'string'

En esa linea trato de enviar los datos "enviando informacion" al servidor que me conecto.

Ahora la otra linea es esta :

Código Delphi [-]
code := ClientSocket.Socket.Read();

Que me da el siguiente error :

[DCC Error] irc.dpr(35): E2035 Not enough actual parameters

Probe agregandole un nil como parametro pero ...

Código Delphi [-]
code := ClientSocket.Socket.Read(nil);

Da este nuevo error :

[DCC Error] irc.dpr(35): E2010 Incompatible types: 'NativeInt' and 'Pointer'

¿ Alguien me podria ayudar ?

pd : El tema es que tengo que usar ScktComp si o si porque no encuentro documentacion sobre como usar indy con consola para enviar y recibir informacion.
Responder Con Cita