Schrift
[thread]10895[/thread]

was ist an der syntax falsch?? (Seite 2)

Leser: 1


<< |< 1 2 3 4 5 ... 7 >| >> 62 Einträge, 7 Seiten
pq
 2007-11-26 13:17
#103017 #103017
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
grey1987+2007-11-26 12:04:53--
was ist mit der Meldung:
Code: (dl )
1
2
[...]
Can't call method "recv" on an undefined value at sock.pl line 30.

was muss ich denn jetzt mit recv machen??

perlsub
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
grey1987
 2007-11-26 13:25
#103018 #103018
User since
2007-11-21
83 Artikel
BenutzerIn
[default_avatar]
ok, ich hab das jetzt so:
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
24
25
26
27
28
29
30
31
32
33
34
35
use IO::Socket;
#use strict;

my $socket = new IO::Socket::INET (PeerAddr =>'PC110197',PeerPort => 1810) or die "Konnte Socket nicht erstellen: $!\n";
$socket->autoflush(1);
print "Sende ein Client Create zum Server\n";
print $socket "CLIENT CREATE\n";
#my $line;
getlinefromsocket;
#$socket->recv($line,10);
print "$line\n";
print "Sende ein CONNECT zum Server\n";
print $socket "CONNECT\n";
$socket->recv($line,10);
print "$line\n";
print "Sende ein DISCONNECT zum Server\n";
print $socket "DISCONNECT\n";
$socket->recv($line,10);
print "$line\n";
print "Sende ein END SESSION zum Server\n";
print $socket "END SESSION\n";
$socket->recv($line,10);
print "$line\n";

$socket->close();

sub getlinefromsocket {
  my $socket = shift;
  my $buffer;
  my $char;
  while ($socket->recv($char,1)) 
  {
    $buffer+=$char;
  }
}

aber dann ist die ausgabe:
Code: (dl )
1
2
3
4
5
6
7
8
Sende ein Client Create zum Serv

Sende ein CONNECT zum Server
ACK
Sende ein DISCONNECT zum Server
ACK
Sende ein END SESSION zum Server
ACK

wieso wird mir das erste ACK nicht ausgegeben??
renee
 2007-11-26 13:37
#103019 #103019
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
teste mal
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
24
25
26
27
28
29
30
31
32
33
34
35
use IO::Socket;
use strict;

my $socket = new IO::Socket::INET (PeerAddr =>'PC110197',PeerPort => 1810) or die "Konnte Socket nicht erstellen: $!\n";
$socket->autoflush(1);
print "Sende ein Client Create zum Server\n";
print $socket "CLIENT CREATE\n";
my $line = getlinefromsocket( $socket, 10 );
print "$line\n";
print "Sende ein CONNECT zum Server\n";
print $socket "CONNECT\n";
$socket->recv($line,10);
print "$line\n";
print "Sende ein DISCONNECT zum Server\n";
print $socket "DISCONNECT\n";
$socket->recv($line,10);
print "$line\n";
print "Sende ein END SESSION zum Server\n";
print $socket "END SESSION\n";
$socket->recv($line,10);
print "$line\n";

$socket->close();

sub getlinefromsocket {
  my $socket = shift;
  my $length = shift;
  my $buffer;
  my $char;
  while ($socket->recv($char,1)) 
  {
    $buffer+=$char;
    last if length $buffer == $length;
  }
}
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
grey1987
 2007-11-26 14:15
#103022 #103022
User since
2007-11-21
83 Artikel
BenutzerIn
[default_avatar]
geht leider nicht, der macht:
Code: (dl )
Sende ein Client Create zum Server

und da blinkt der cursor ewig und es geht nichts.
wenn ich dann auf strg c drück, kommt noch mal die meldung:
Code: (dl )
1
2
Sende ein Client Create zum Server
Terminating on signal SIGINT(2)
renee
 2007-11-26 14:28
#103023 #103023
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
$buffer+=$char; -> $buffer.=$char;
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
grey1987
 2007-11-26 14:35
#103024 #103024
User since
2007-11-21
83 Artikel
BenutzerIn
[default_avatar]
meinst du
$buffer+=$char -> $buffer.=$char;
also ohne ; mitten drin?
wenn ja, geht auch nicht.
Gast Gast
 2007-11-26 14:37
#103025 #103025
tausche:

Code: (dl )
$buffer+=$char; 



durch

Code: (dl )
-> $buffer.=$char;
grey1987
 2007-11-26 14:48
#103026 #103026
User since
2007-11-21
83 Artikel
BenutzerIn
[default_avatar]
ändert sich nichts.
renee
 2007-11-26 15:03
#103027 #103027
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
grey1987+2007-11-26 13:35:08--
meinst du
$buffer+=$char -> $buffer.=$char;
also ohne ; mitten drin?
wenn ja, geht auch nicht.


Nein, damit meinte ich, das "+" durch "." ersetzen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
grey1987
 2007-11-26 15:03
#103028 #103028
User since
2007-11-21
83 Artikel
BenutzerIn
[default_avatar]
also es kommt mir so vor, als ob der mein sub gar net durchgeht.
<< |< 1 2 3 4 5 ... 7 >| >> 62 Einträge, 7 Seiten



View all threads created 2007-11-26 12:25.