我正在尝试从可执行(.exe)文件中获取Perl脚本(.pl)。 .exe文件最初是用Perl编写的,但是没有保存.pl文件。有快速的方法吗?我正在使用Strawberry Perl for windows。
由于
答案 0 :(得分:5)
来自PAR FAQ:
如何从打包的可执行文件中提取脚本?
换句话说,“我做了一个`pp foo.pl'而我丢失了foo.pl,我怎么把它取回来?”。
答案是只使用unzip / winzip / winrar /解压缩可执行文件,将其视为普通的Zip文件。您可能需要先将可执行文件重命名为.zip扩展名。
答案 1 :(得分:5)
将.exe
重命名为.zip
并检查是否可以提取文件
答案 2 :(得分:1)
pp依赖于PAR来创建可执行文件。 PAR依赖于Archive :: Zip,因此在某种程度上,该文件包含用于创建可执行文件的perl脚本的压缩副本。
通常,这些程序将加载程序附加到zip存档的前面,该文件将文件解压缩到临时目录并调用指示为程序入口点的脚本。
我会尝试两件事:
在所有典型的Temp目录(例如\ Users \ Username \ AppData \ Local \ Temp)中找到包含脚本及其先决条件的目录。
尝试将exe解压缩为zip,可能首先使用字节编辑器从程序开始时删除加载程序。