Thread Kommunikation 2er Programme (nicht Kind-Prozess)
(16 answers)
Opened by Mates at 2007-11-30 20:55
Hmm, wenn ich jetzt folgenden Codefetzen für den Clienten benutze, bekomme ich diese Fehlermeldung:
Quote bzw.: Quote Hier der Code: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #!/usr/bin/perl -w use strict; use CGI::Carp qw(fatalsToBrowser); use IO::Socket; my ( $HOSTNAME, $PORTNO, $MAXLEN, $nachricht ); $HOSTNAME = '127.0.0.1' ; $PORTNO = 5151; $MAXLEN = 1024; $nachricht = 'Hallo Computer'; socket ( SOCKET, PF_INET , SOCK_DGRAM, getprotobyname ( 'udp' ) ) or die "socket: $!"; my $ipaddr = inet_aton ( $HOSTNAME ); my $portaddr = sockaddr_in ( $PORTNO, $ipaddr ); send ( SOCKET, $nachricht , 0, $portaddr ) == length ( $nachricht ) or die "cannot send to $HOSTNAME($PORTNO): $!"; $portaddr = recv ( SOCKET, $nachricht, $MAXLEN, 0 ) or die "recv: $!"; ( $PORTNO, $ipaddr ) = sockaddr_in ( $portaddr ); my $host = gethostbyaddr( $ipaddr, AF_INET ); print "$host($PORTNO) said $nachricht$/"; /edit: Ok, habs jetzt mal damit probiert: Server: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 use IO::Socket; my $sock = new IO::Socket::INET ( LocalHost => '127.0.0.1', LocalPort => '7070', Proto => 'tcp', Listen => 1, Reuse => 1, ); die "Could not create socket: $!\n" unless $sock; my $new_sock = $sock->accept(); while(<$new_sock>) { print $_; } close($sock); Client: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 use IO::Socket; my $sock = new IO::Socket::INET ( PeerAddr => '127.0.0.1', PeerPort => '7070', Proto => 'tcp', ); die "Could not create socket: $!\n" unless $sock; print $sock "Hello there!\n"; close($sock); Die Daten werden soweit erfolgreich geschickt :D Nur bekomm ich beim Client trotzdem folgende Meldung: Quote Wo liegt das Problem? Ist die Zeile 7 mit dem "die" nicht überflüssig/ falsch?? |