我想问一下是否有人可以解释我,为什么我不能执行Windows工具的UPX打包版本:" calc.exe" (Windows 32或Windows 10上的32位版本),但在Windows XP上打包的#34; calc.exe"正在运行没有问题(在所有转换中我没有错误消息和良好的打包率从大约50%)。
自Windows 7以来,calc版本的原因是使用更多的依赖项,如.NET还是以某种方式受到这些操作系统更复杂的安全机制的保护?
我使用的是最新的UPX版本3.94。
最诚挚的问候,
安德烈亚斯
答案 0 :(得分:1)
我猜这个问题与MUI resource和MUI satellite DLLs。
有关尝试使用--compress-resources=0
UPX选项。如果您想压缩其他一些资源,可以尝试使用--keep-resource=
。
如果您移动/重命名Calc.exe,您还必须确保对.mui文件执行相同操作:
md myCompressedCalc
cd myCompressedCalc
copy %windir%\System32\calc.exe .\
md .\en-us
copy %windir%\System32\en-US\calc.exe.mui .\en-us\
upx --compress-resources=0 .\calc.exe