Mi problema es que quiero enviar por un socket info y en el otro lado quiero recibirla y mostrarla en un objeto tipo $caja
Using perl Syntax Highlighting
use Tk;
use Tk::Dialog;
require Tk::LabFrame;
$ventana = MainWindow->new;
$ventana->title("Jacano");
$ventana->geometry("350x250");
$etiketa = $ventana->LabFrame(-borderwidth => '1',-label=> "Caja",-labelside=> "acrosstop",-relief => 'flat');
$etiketa->pack;
$caja = $etiketa->Text(-borderwidth => '1',-font=> "Tahoma 8 normal",-relief => "solid");
$caja->pack;
MainLoop;
use Tk::Dialog;
require Tk::LabFrame;
$ventana = MainWindow->new;
$ventana->title("Jacano");
$ventana->geometry("350x250");
$etiketa = $ventana->LabFrame(-borderwidth => '1',-label=> "Caja",-labelside=> "acrosstop",-relief => 'flat');
$etiketa->pack;
$caja = $etiketa->Text(-borderwidth => '1',-font=> "Tahoma 8 normal",-relief => "solid");
$caja->pack;
MainLoop;
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Mi intención es poder actualizar el contenido de esta caja cada vez que recibo info.
La única manera que conozco de enviar información por un socket es esta.
Using perl Syntax Highlighting
use IO::Socket;
$sock = IO::Socket::INET->new(PeerAddr=>$ip_conecta,PeerPort=>$puerto,Proto=>'tcp',Timeout=>1);
print $sock "Info enviada a $ip_conecta por puerto $puerto\n";
$sock = IO::Socket::INET->new(PeerAddr=>$ip_conecta,PeerPort=>$puerto,Proto=>'tcp',Timeout=>1);
print $sock "Info enviada a $ip_conecta por puerto $puerto\n";
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
Y la forma que conozco de recibir esta información es.
Using perl Syntax Highlighting
use IO::Socket;
$serv = IO::Socket::INET->new(Proto => 'tcp',LocalPort => $puerto ,Listen=> SOMAXCONN, Reuse => 1);
$conexion_serv = $serv->accept();
if ($msg = <$conexion_serv>) {
$msg =~ s/\r\n|\n//g;
print $msg;
}
$serv = IO::Socket::INET->new(Proto => 'tcp',LocalPort => $puerto ,Listen=> SOMAXCONN, Reuse => 1);
$conexion_serv = $serv->accept();
if ($msg = <$conexion_serv>) {
$msg =~ s/\r\n|\n//g;
print $msg;
}
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
Sé que puedo redirigir el print hacia otros sitios como print STDERR pero redirigirlo a una caja de texto usando tk no se hacerlo.
Quizás la manera de enviar la información usando print $socket mensaje no sea la adecuada, ni tampoco la recepción de la misma.
¿Algún otro método para enviar y recibir info a traves de un socket un poco más profesional?
¿Me echáis una mano con el tema de la caja Tk?
gracias.