[Cascavel-pm] Perl Windows x Perl Linux

Ivo Peixinho ivocarv em cais.rnp.br
Sexta Julho 21 13:39:53 PDT 2006


   Prezados,

    Considerando o seguinte codigo:

$path=$ARGV[0];
open(MW,$path);
read MW,$buff,1024;
close ($buff);
print unpack('h1024',$buff);
print "\n";

   No linux eu rodo e tenho:

perl dump.pl irpf2005v1.0.exe

d4a509003000000040000000ffff00008b0000000000000004000000000000000000000000000000
00000000000000000000000000000000000000000d000000e0f1abe0004b90dc128b10c4dc124586
9637020727f6762716d6023616e6e6f647022656022757e60296e60244f43502d6f64656e2d0d0a0
4200000000000000d60b46cf921da0fa921da0fa921da0fa921da0fa821da0fa921db0faf61da0fa
b4ec91fa021da0fa673f00fab21da0faee7dc0fa821da0fa6d1fe0fa821da0fa25963686921da0fa
000000000000000005540000c41040002ca087b300000000000000000e00f050b010600000220000
0061000000000000fa12000000010000000400000000040000010000002000004000000040000000
40000000000000000007000000400000000000002000000000000100000100000000010000010000
00000000010000000174000096000000821400004600000000060000046000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000040000821000000000000000000000
00000000000000000000000000000000e24756874700000062120000000100000022000000400000
00000000000000000000000002000006e2274616471600009770000000040000

   No windows eu rodo e tenho:

perl dump.pl irpf2005v1.0.exe

d4a509003000000040000000ffff00008b0000000000000004000000000000000000000000000000
00000000000000000000000000000000000000000d000000e0f1abe0004b90dc128b10c4dc124586
9637020727f6762716d6023616e6e6f647022656022757e60296e60244f43502d6f64656e2d0a042
00000000000000d60b46cf921da0fa921da0fa921da0fa921da0fa821da0fa921db0faf61da0fab4
ec91fa021da0fa673f00fab21da0faee7dc0fa821da0fa6d1fe0fa821da0fa25963686921da0fa00
0000000000000005540000c41040002ca087b300000000000000000e00f050b01060000022000000
61000000000000fa1200000001000000040000000004000001000000200000400000004000000040
00000000000000000700000040000000000000200000000000010000010000000001000001000000
00000001000000017400009600000082140000460000000006000004600000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000004000082100000000000000000000000
000000000000000000000000000000e2475687470000006212000000010000002200000040000000
000000000000000000000002000006e227461647160000977000000004000000

  Alguem sabe me explicar porque o *mesmo* codigo, aplicado ao *mesmo* 
executavel da' dumps diferentes? (comparando a 3a linha dos dois, enquanto 
um tem "e2d0d0a042", o do windows tem "e2d0a042", ou seja, o windows 
"comeu" um "d0").

   Versoes do perl:

This is perl, v5.8.0 built for i386-linux-thread-multi
This is perl, v5.8.7 built for MSWin32-x86-multi-thread

    Ivo.


Mais detalhes sobre a lista de discussão Cascavel-pm