2012-06-08 78 views
0
  1. 为什么VS2010将这种信息(函数名称)放入发布模式是可执行的?减小.exe大小。 EXE压缩机

  2. 我可以摆脱exe文件中的所有未使用的数据/段,重新链接它,重新构建它等一些第三方软件的帮助,将“分析”现有的.exe并重建它?

  3. 我可以压缩.exe文件通过添加一些解压缩启动二进制代码来缩小它的大小吗?

enter image description here

+0

3:检查UPX。我不知道为什么你的EXE显示这个,请添加细节,你如何得到这个观点(并且喜欢文本问题而不是链接图片) – CharlesB

+0

第3点 - 是的,这就是所谓的“exe压缩器”,有很多这样的周围的软件。 QT是静态链接还是独立的DLL? – sharptooth

+1

而不是VS,它更可能是QT将各种风格的运行时类型信息作为字符串文字放入二进制文件中。 VS只是做它必须做的事情。 –

回答

5
  1. 由于事实上做3,它是不是真的VStudio是把这些细节,但你的项目静态消耗Qt库。众所周知,就图书馆的规模而言,Qt是“慷慨的”。

  2. 是的,具备这些细节有助于您了解软件的功能。 (例如使用Qt)。

  3. 就压缩性和便携性而言,UPX是众所周知的并且非常高效。但别忘了,UPX是一种压缩(和解压缩)机制,而不是一种加密机制。要隐藏一些导出表等,你可以使用真正的压缩和加密包,如VMProtect

+0

2.那么,您能否推荐一些可以删除已知库的“指纹”的软件? – pavelkolodin

+0

库的“指纹”总是由您选择的任何压缩器(加密器)来更改。只需使用UPX进行尝试,您就会看到原始(静态)导入的库的数量和名称将会减少并更改。 – mox

+0

将尝试使用我的可执行文件的win32版本的UPX。现在我建立它为Win64和UPX不支持它( - ; – pavelkolodin

1

除非你的可执行文件是几十兆,我不会理会。

但是,为了回答这个问题,我会用UPX