Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
压缩exe文件的神器!解压到windows/system32目录即可。 1、常用功能,命令示例,说明 基础压缩,upx program.exe,使用默认级别压缩文件。 指定级别,upx -9 program.exe,使用 1-9 级压缩(9 为最高,速度最慢)。 极限压缩,upx --best program.exe,尝试所有压缩方法以达到最小体积。 解压还原,upx -d program.exe,将压缩过的文件还原到原始大小。 测试文件,upx -t program.exe,检查压缩文件的完整性。 列出信息,upx -l program.exe,显示压缩比、原始大小等详细信息。 2、进阶参数说明 如果你有更具体的需求,可以使用以下进阶参数: -o [file]:指定输出文件名,避免覆盖原文件。 upx app.exe -o app_compressed.exe -f (force):强制压缩。即使 UPX 认为压缩效果不佳或有潜在风险,也会执行。 -k (keep):压缩后保留原始文件的备份(通常会加上 .bak 后缀)。 --ultra-brute:比 --best 还要激进的压缩模式,会尝试数千种排列组合,耗时较长,但体积最小。 3、工作原理简述 理解 UPX 的工作方式有助于你更好地使用它: 压缩阶段:UPX 将原始的可执行文件(如 .exe, .elf)进行高比例压缩,并在文件头部添加一小段解压存根(Decompression Stub)。 执行阶段:当你运行压缩后的程序时,存根代码首先运行。 内存还原:存根在内存中将程序解压,然后将控制权移交给原始程序代码。 性能损耗:由于解压是在内存中瞬间完成的,通常你感觉不到启动延迟。 4、使用建议与注意事项 不要重复压缩:对已经压缩过的文件(或已被其他工具加壳的文件)再次使用 UPX 通常没有效果,甚至可能导致程序损坏。 杀毒软件误报:这是 UPX 最常见的问题。由于许多木马和病毒也使用 UPX 来隐藏代码特征,某些杀毒软件会直接将 UPX 压缩过的合法程序标记为病毒。 动态链接库 (DLL):UPX 可以压缩 DLL,但在某些复杂环境下(如插件系统)可能会导致加载失败,建议压缩后务必充分测试。 不适合所有场景:对于现代大型 3D 游戏或资源文件极大的程序,压缩执行文件(.exe)提升有限,因为大部分体积在于外部素材。 5、快速检查压缩效果 压缩完成后,你可以运行以下命令查看节省了多少空间: upx -l your_file.exe 它会输出类似如下的表格: File size Ratio Format Name -------------------- ------ ----------- ----------- 1,048,576 -> 412,345 39.32% win64/pe your_file.exe