Pomuze mi nekdo se skriptikem na win?
Zbynek Houska
zhouska na cz.foxconn.com
Pondělí Květen 12 21:51:07 MEST 2003
Dekuji za dodatky,
nicmene na to uz jsem prisel sam. Skriptik jsem poupravil a momentalne
vypada asi takhle:
#!perl
#
# Tento program tiskne zadany soubor na COM ci LPT port, zalezi na # #
nastaveni.
#
# Verze 0.1
#
#
#
#
$aolp='';
$soubor=0;
print 'Jaky chcete tisknout soubor? ';
chomp ($soubor= <STDIN>);
open (F, "<C:\\$soubor") or die 'Soubor nelze otevrit!';
open( PORT, "+>LPT1" )
or die "Nemohu otevrit port pro komunikaci s tiskarnou: $!";
while (print 'Kolikrat chcete soubor tisknout? '){
chomp ($aolp =<STDIN>);
if ($aolp gt "999")
{print "Zadna pismena prosim, zadejte cisla od 0 do 999.\n";
next;
}
if ($aolp > 999)
{print "Prilis velke cislo, zadejte cisla od 0 do 999.\n";
next;
}
if ($aolp < 0)
{print "To je zaporne cislo. Zadejte cisla od 0 do 999.\n";
next;
}
last;
}
while () {
if ($aolp != 0){
$aolp -= 1;
print PORT slurp ("$soubor");
sub slurp {
my $file = shift;
local *F;
open F, "< $file" or die "Nemohu otevrit '$file' pro cteni: $!";
binmode F;
local $/ = undef;
my $string = <F>;
close F;
return $string;
}
sleep 3;
}
else {last;}
}
print 'Tisk uspesne ukoncen!';
K tisku neni pouzivan zadna bezna tiskarna, nybrz Zebra, ktera tiskne vesmes
carove kody. Zatim jsem neprisel na nic lepsiho co by vyresilo vytisteni
celeho souboru na vyse uvedene porty. Pokud vas neco napadne tak se rad
priucim.
Zbynek
Další informace o konferenci Perl