0

在 SciTE 下载页面 ( http://www.scintilla.org/SciTEDownload.html ) 上有一个链接:

“称为 Sc1 (720K) 的单个文件可执行文件不需要任何 DLL 或属性文件,因为它们链接到可执行文件中。”

那是用什么语言写的?我下载的源代码压缩后超过 2 MB,解压后超过 7 MB,但单个 exe 文件大小为 720K。

他们是否为这个小的独立 exe 使用了不同的语言?他们是如何获得 DLL 文件的?

他们为 GUI 使用了什么?Python、LUA 还是 MFC?

Python解释器和Lua解释器是否也嵌入到exe中?

谢谢!

4

1 回答 1

0

答案在他们的下载网页上:他们使用了UPX可执行压缩器。它非常有效地压缩可执行文件,因为与 zip 不同,它区分数据/代码部分并以不同方式处理它们。解压器非常小,嵌入在最终的 exe 中;代码和数据在应用程序启动时在内存中解压缩。根据wiki,使用了 UCL 和 LZMA 压缩算法。

scite 源目录是 3Mb 未压缩的,是用 C++、python 和 lua 编写的。单个exe不附带的属性文件将近800kb,doc是500kb。实际上,有大约1Mb的源代码,它应该生成一个1-5Mb范围内的exe,然后由UPX压缩成一个720kb的文件。

于 2013-11-25T18:41:19.263 回答