Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Problemi con Perl2exe

  1. #1

    Problemi con Perl2exe

    Ho incontrato delle difficoltà ad usare perl2exe (versione di prova 30 giorni) nel compilare alcuni scripts...

    I codici che posterò funzionano senza problemi quando "Interpretati"

    1) Ho provato a compilare questo codice ma il risultato è una finestra con caratteri incomprensibili:

    codice:
    #!/usr/bin/perl -w 
    
    use strict; 
    use warnings;
    use Tk; 
    use Win32::GUI; 
    my $hw = Win32::GUI::GetPerlWindow(); 
    Win32::GUI::Hide($hw);
    
    my $main = new MainWindow; 
    $main->title("THEARTOFWEB"); 
    $main->Label(-text => 'Hello World!')->pack; 
    $main->Button(-text => 'Quit',-command => sub{exit})->pack; 
    $main->Frame(qw/-width 300 -height 50/)->pack; 
    
    MainLoop;
    2) La compilazione viene portata a termine ma se eseguo l'exe del file appena compilato mi dice che non trova "math/bigint/calc" ?????? ma siamo matti????

    codice:
    #/!usr/bin/perl 
    
    use strict; 
    use warnings; 
    use Spreadsheet::ParseExcel; 
    
    my $oExcel = new Spreadsheet::ParseExcel; 
    my $oBook = $oExcel->Parse('test.xls'); 
    
    print "FILE :", $oBook->{File} , "\n"; 
    print "COUNT :", $oBook->{SheetCount} , "\n"; # Numero di 'fogli' nel Workbook... 
    print "AUTHOR:", $oBook->{Author} , "\n"; 
    
    my $oWkS = $oBook->{Worksheet}[0]; # Primo foglio 'sport' 
    
    print "--SHEET:", $oWkS->{Name}, "\n"; 
    print "--Num Row:", $oWkS->{MaxRow}, "\n\n"; 
    
    my $num_rows = $oWkS->{MaxRow}; # Righe totali nel foglio... 
    
    my ($iR,$oWkC); 
    
    for $iR (0 .. $num_rows) { 
     next if $iR == 0; # Skippa la prima riga che contiene i nomi delle colonne... 
     $oWkC = $oWkS->{Cells}[$iR][0]; print $oWkC->{Val} , " "; # colonna 'A' 
     $oWkC = $oWkS->{Cells}[$iR][1]; print $oWkC->{Val} , " "; # colonna 'B' 
     print "\n"; 
    } 
    
    my $zz = <STDIN>; 
    __END__;
    O forse sono cose fatte a posta da perl2exe perchè è un trial?

    Devo anche devo dire che perl2exe non parte subito se lodigito da terminal ma devo arrivare nella dir che lo contiene.

    Aiuto.

  2. #2
    Perl2exe fa un particolare pacchetto con dentro tutte le librerie richieste.

    Spesso accadde che librerie richiamano altre librerie usando EVAL, come ad esempio fa DBI che carica i driver del database secondo cosa ti serve.


    I moduli che ti dice che mancano devi preventivamente richiamarli con use all'inizio del tuo programma.

    Ti dice che non trova math/bigint/calc?


    Semplice.
    All'inizio del tuo script metti:
    use math::bigint::calc;

    E così se dovesse continuare.
    Fai conto che per use Crypt::RSA ho dovuto includere almeno 20 librerie che perl2exe non trovata.
    Ma se fai bene vedrai che va.

    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.