独家解密:单文件软件的制作过程

单文件软件,顾名思议,就是只有一个文件的软件。现在网络上流行着这么一种软件,比如单文件的QQ,你下载回来后,会发现压缩包里只有一个QQ.exe,双击它,就弹出了QQ登陆窗口,然后登陆,聊天,一切都正常!可能你会很奇怪,一个正常QQ软件的功能怎么会只用一个QQ.exe文件就完成了呢?今天,清风小荷塘就告诉你这是为什么!

单文件软件的实现原理
上面所说的QQ.exe其实就是一个exe格式的压缩包,制作者会首先安装一个正常的QQ,然后将安装目录压缩成一个exe格式的压缩包,当你双击它的时候,这个压缩包会“自动”将所有文件解压到一个临时文件夹中,然后再“自动”从这个文件夹运行QQ程序。等于是把一个绿色版的QQ安装到了这个临时文件夹中,然后在这个临时文件夹中运行QQ。之所以说“自动”,是因为整个过程是以一个“隐性”的方式进行的,不会弹出来任何界面。另外,由于“解压”的速度比较快,给人的感觉是,一双击马上运行了。

如何制作单文件软件?
知道了单文件软件的制作过程,现在,请大家跟着清风小荷塘一起,亲自动手制作一个单文件的QQ吧!

该请出大名鼎鼎的单文件制作工具FilePacker了,FilePacker是一个很棒的封装工具,用于将众多文件(夹)封装成一个独立的exe文件。为了方便演示,我们事先把QQ2008安装到“E:\聊天工具\QQ2008”目录之下。

打开FilePacker,点击“下一步”,然后“创建新工程”,工程名可以随意定(最好使用英文),这里我们保持默认的“Project Name”,然后再“下一步”。

单文件软件的制作过程

在“选择源目录”里,我们选择QQ2008的安装目录,然后“下一步”。

单文件软件的制作过程

由于解压后要运行目录里的QQ.exe这个程序,这里我们勾选它,然后“下一步”。聪明的你,应该知道为什么要勾选它。

单文件软件的制作过程

在这一步,如果勾选了“显示解压进度条”,那么将来“释放”的时候会显示一个解压的进度条;如果勾选了“激活密码保护”,那么将来你运行单文件软件的时候,将会弹出来密码输入窗口;所以,强烈建议不要勾选这2个选项。同时,建议把“压缩等级”拉到最右边,即“BEST”,这样压缩比率会达到最大,将来制作的单文件软件体积也会达到最小。

单文件软件的制作过程

然后就是最后一步了,见下图,分别设置临时解压路径,单文件软件的图标,以及生成路径等。图片中已经标注的很清楚了。至此,一个文件版的QQ已制作完成!

单文件软件的制作过程

FilePacker下载地址:地址一地址二

说明:
1,上面最后一步要求一个32×32大小、256色的ICO图标。此图标要求很严格,只要大小不是32×32,或者颜色深度不是256色,就一定不行,如果你没有这样一个图标,可以留空,FilePacker会自动“分配”一个这样的图标。
2,一般的绿色软件才能打包成单文件软件,上面的制作过程中丝毫没有谈到注册表的内容,如果一个软件需要注册表才能运行,那么是不能制作单文件软件的。

32 responses to “独家解密:单文件软件的制作过程”

    • 如果你经常逛深度和雨林木风的软件的软件版块,你就会发现不少这种单文件软件,比如单文件版的Photoshop,呵呵,我相信你也会喜欢这种软件的

  1. 我觉得好像有点问题啊!
    这种方法好像对绿色软件有用,QQ2008不是绿色软件,在安装时要写入好多键值到注册表,理论上讲是行不通的。
    这是我愚见,还肯博主赐教。

    • 应该说QQ2008的大部分功能(登陆、聊天等)不需要靠注册表就能实现,你可试着把你朋友电脑上的QQ2008目录拷贝到你的电脑上,是肯定可以正常运行的。所以说QQ2008是可以制作成单文件软件的。

    • 原创的东西 权重当然高了 8) 尝试着原创吧 我期待着有一天能在谷歌里用常见的关键词搜到你有站 :lol:

  2. 博主最近是不是换了空间,速度好慢啊!打开你博客的首页,要花9秒才能打开

    • 谢谢!大家同喜!我没有换空间啊 一直都是用的DREAMHOST的空间 可能博客图片有点多吧 等空间到期了我会考虑搬回国内的 :wink: 欢迎你继续关注本博客!

  3. 话说单文件软件其实启动会慢很多。比如大一点的PS,你去试试,因为要加载所有的DLL。

    • 不推荐将大型软件打包 因为“解压”都要好久 而且制作出来的单文件也会超大 不过话说我见过一个5M左右的Flash软件 不知道谁这么强能做得出来

    • 听到你这句话我觉得很荣幸 看来我两个多小时的心血没有白费 呵呵 以后还会有更好的文章奉献出来 欢迎你继续关注本博客

  4. 请问博主:此文提到的32×32,256色ico如何得到,我试过提取的ico,但就是不行,有什么工具能把提取的ico转换成FilePacker支持的吗?恳求你的答复

    • 建议使用专业的ICO制作软件制作,这里我推荐IcoFX这个软件,很小巧,专门制作ICO的

  5. 谢谢博主,我下载了IcoFX1.5,但不知道如何将提取的图标转换成32×32,256格式,望博主指点一二,莫见笑我的无知。

    • 我是让你自己制作IC图片,没让你转换。在转换方面我也一直没搞懂,我以前都是自己制作的,比如说打一个字上去

Leave a Reply

Your email address will not be published. Required fields are marked *