呵呵,因为写REFile需要打包程序,PDK和perl2exe太贵付不起,perlcc功能有限无法打包,PAR打包后尺寸太大,所以打算自己用Perl写一个打包的软件,上次跟恒恒说起,也写了个0.0.0.1版,只能打包不含模块的以及不显示DOS窗口,今天休息,又尝试了一下,应该是比REFile要简单些吧,可以打包包含模块的,但是现在还有许多问题没去尝试,比如尺寸问题,需要将注释去掉并有好的压缩算法,依赖Perl58.dll问题,这个打算等以后用OCaml实现,现在还不管它,无法指定程序图标,不知道如何实现,以后用OCaml我想就可以解决,Perl并不知道如果实现,还没进行更多测试。等休息时有空整理一下再发上来吧。
perl -c -e "use CGI;CHECK {print join \"\n\",%INC}"
用於輸出使用的模塊……
而圖示方面……
可以直接使用Resource Hacker類程式修改或者 以 exe header 的資源記錄方法做修改
呵呵,如果以其它程序来改图标就不是初衷了,修改Exe header嘛,如果原来是有图标的是可以,程序原来就没图标不知道你用什么方法加上去,我觉得是有些难度。谢谢!
http://search.cpan.org/~autrijus/Win32-Exe-0.08/lib/Win32/Exe.pm
就是這麼簡單
呵呵,大哥,这个模块早就试过了,如果原来有图标那是没有问题,我说的是原来没图标怎么加上去。并不是想像的那么简单哟。谢谢!
.......
我才叫你大哥啦.......=="""並非所有沒有 圖標的都會出錯……而是沒有win32資源表的會出錯…………
呵呵,是啊,那你是怎么处理这个的?我并没有搞定。谢谢!
affix('http://easun.org/upload/perl/usr/200605/header_1147617954.jpg','/esbnocgi');
直接把 Icon 資源加到檔尾就可以……
不過Icon 資源在exe中有些Info要增加上去的,我還未分析出來………
affix('http://easun.org/upload/perl/usr/200605/zzz_1147618267.zip','/esbnocgi');
這是我用作測試及上面的範例
呵呵,多谢指点,我还得多学习下PE格式。
我比較想看的是你打包方面如何實現
呵呵,等写完会公开的,这阵子没时间继续写,又是上班,考试又是学习:(
打包无非是加处理后的数据到PE文件的尾部或者数据段?
以pe類電腦病毒來想,多是新加數據段……