perl是个方便的东西,windows下的activeperl确实方便了我们的生活,一些批处理解决不了的稍微复杂一点的程序可以用activeperl代替,而且可移植性很高,当把perl编译成exe之后,就可以像运行普通的windows程序那样单独运行perl程序,而不需要依赖activeperl环境,因为perl环境已经编译进exe文件。
我所知道的windows下编译perl比较好用的有perlapp(perl官方提供的,可靠性不言而喻了),Perl Archive Toolkit(简称PAR,CPAN上有详细介绍),perl2exe(最简单的编译加密,也是最容易被反编译的一种)。
3种方式各有优势,perl2exe虽然简单,但是编译很快,编译后的文件也是最小的;perlapp虽然是官方的,但是不开源,而且是商业性质的,要收费的;PAR编译起来也比较慢,编译后的文件也是最大的,但是他免费开源,而且加密性很好,兼容性也不必perlapp差。所以3种加密方式用过之后,我还是觉得PAR比较好一些。
PAR安装起来也比较简单,因为是CPAN模块,所以可以直接通过CPAN安装。
1. 安装 PAR
1.1 安装如下模块 用PPM安装如下模块:
Parse-Binary, Win32-Exe, Module-ScanDeps, PAR-Dist,Getopt/ArgvFile
1.2 安装Par
Par没法用PPM安装,搜索Par-packer找不到,于是直接到CPAN(http://www.perl.com/CPAN/authors/id/S/SM/SMUELLER/)网站找。先到CPAN网站找了符合自己Perl版本的那个文件,
用迅雷下下来把PAR-Packer-0.982-MSWin32-x86-multi-thread-5.10.0.par.bin 文件下下来,并用如下命令安装:
C:\Perl>perl -MPAR::Dist -e "install_par('PAR-Packer-0.982-MSWin32-x86-multi-thread-5.10.0.par.bin')"
2. 用Par打包Perl脚本为EXE