VMware ThinApp是一款应用程序虚拟化工具,但对于我来说用的更多的是制作单文件软件和便携软件;VMware ThinApp将程序相关资源如exe、dll、ocx、注册表项等封装到单一的EXE文件中,程序运行时需要的资源也都从这个单EXE的虚拟环境中,从 而实现与操作系统的隔离。
借助VMware ThinApp的封装可以制作比较纯正的单文件软件,而简单设置参数后,VMware ThinApp也能充当制作便携软件的 角色;大部分情况下,VMware ThinApp也确实能出色的工作;之前一直想做一个简单的ThinApp使用教程,不过总是没坚持下来,这次借着新版VMware ThinApp的发布就先整理出一个制作思路来吧,希望能与大家共同探讨学习下。不过现在我还是不太喜欢单文件软件了,尤其是ThinApp封装的,更倾 向于绿色软件和免安装软件。
引用
1. 首先运行程序「Setup Capture.exe」,ThinApp会以向导模式完成程序打包,点击「Next」继续。
2. 这里简单介绍了注意事项,最主要的就是在一个干净的系统上扫描形成系统快照,好处就是能得到程序正常运行所需要的最多信息。
如需要自定义扫描配置,点击「Advanced settings...」,这里可以设置需要扫描的驱动器和注册表分支,设定好之后确定返回。
3. 点击「Next」后ThinApp会以扫描当前文件系统和注册表并形成一个快照,ThinApp正在保存快照:
待系统快照完成之后,VMware ThinApp会给出提示,即开始安装并配置好你需要封装的程序,建议将程序安装到默认位置。一切完成之后点击「Next」继续:
4. VMware ThinApp进行程序安装后的系统快照扫描:
扫描完成后将会提示选择程序入口点,即从哪个程序开始启动,一般就是主程序文件,通常ThinApp会自动选择好:点击「Next」继续。
5. 进入「Sandbox Location」设置,Sandbox是Thinapp的沙盘或缓存目录,及程序所作更改的保存路径,以后再运行封装的程序时会从Sandbox中读取配置信息,如果删除Sandbox的话,程序就会复原为默认状态(即快照时的状态);
VMware ThinApp提供了三种模式:「User's profile (%AppData%\\Thinstall」目录就是系统的Application Data目录,「USB flash / portable media」就是将「Sandbox」保存到exe文件所在路径,即相当于制作便携软件了、Sandbox路径就跟封装出的程序在同一个目录中。
6. 点击「Next」进入System Isolation模式设置;所谓的「Isolation modes」就是设置虚拟程序所做的更改如何影响到实际的计算机环境。
「Merged isolation mode」(合并模式)允许虚拟程序在实际的文件系统中保存文件(如c路径,但系统目录除外)、或者说封装后的程序(Thinstalled App)对文件系统的更改是合并进现有的文件系统的;
而选择「WriteCopy isolation mode」模式后,虚拟程序所作的更改只会保存到桌面和文档目录,而保存到其他目录(如c)是不可见的(被重定向并保存到到了Sandbox 中),或者说封装后的程序对文件系统的更改将不会在时间的文件系统中可见,转而保存到Sandbox中,如处理后的图片等。这里「Merged isolation mode」用的比较多。
7. 点击「Next」继续,这里可以设置Thinapp工程文件的保存路径,还可以设置封装时的压缩模式(Compression);
「No compression」即为不压缩,「Fast compression」为快速压缩模式;建议选择「Fast compression」,能提供57%的压缩率,而程序启动时间跟「No compression」相差不多,就是第一次封装的时候时间较长。
点击「Next」后VMware ThinApp开始保存工程文件:
8. 保存完之后,你有两个选择:「Build Now」直接以默认参数生成虚拟化程序,或「Browse Project」返回到工程文件目录自定义更多高级选项。
这是直接选择「Build Now」后的情况,最后会提示Build Complete,封装后的程序在工程目录的「bin」文件夹中:
9. 选择「Browse Project」浏览到工程文件目录。在这里可以删除一些不必要的文件以减少封装后的文件大小,如删除帮助文件、卸载程序等;而这里的 「Package.ini」就是封装参数配置文件,由「build.bat」调用,我在这里说明一下常用的参数。修改参数后重新运行 「build.bat」即可生成虚拟化程序。
* 压缩和分离模式,这在前面的向导已经设置过了,如果不满意地方,也可以直接在「Package.ini」中更改:
可选项有:
CompressionType=None
CompressionType=Fast
DirectoryIsolationMode=Merged
DirectoryIsolationMode=WriteCopy
* 「SandboxPath」设置:SandboxPath即Sandbox路径,SandboxPath即可以用相对路径,也可用绝对路径。
SandboxPath=. (EXE文件相同路径下)
SandboxPath=%AppData%\\Thinstall (系统的AppData\\Thinstall目录)
SandboxPath=LocalSandbox\\Subdir1(EXE文件目录下的子目录)
SandboxPath=Z:\\Sandboxes
* 「OutDir」即打包程序的输出目录,不做过多介绍。
* 「SandboxName」即Sandbox的目录名,最好设置为一个更好的名字,默认是软件名。
* RemoveSandboxOnExit:程序结束时是否删除Sandbox。
RemoveSandboxOnExit=1 (删除Sandbox)
RemoveSandboxOnExit=0 (不删除Sandbox)
* VirtualDrives:这里保存的是快照时系统的驱动器状态,包括类型、序列号等信息,以便运行虚拟程序时创建虚拟的驱动器状态,我的经验是最好是在一个虚拟机中做快照,且不要有太多分区。
以上就是一些常用的Thinapp封装参数,当然不止这些,还有很多很多高级的选项,需要的请自己参考帮助文件吧,说明都很详细,特别是ThinApp Scripts功能,可以在程序启动或结束时运行批处理或VBS脚本,这样就能实现更多的功能了。需要说明的是VMware ThinApp并不是适合每一个程序,有的封装后就不能运行,只能是通过ThinApp的升级来修复bug、支持更多的软件;强烈建议在一个干净的系统环 境中使用VMware ThinApp。我现在对单文件软件不是怎么感兴趣,VMware ThinApp也用的少多了,不过还是希望能与大家多交流交流。
==============================================================
用VMWare ThinApp 制作单文件教程
今天在网上看到一个视频教程 自己学习了下 做了 PhotoShop 7.0 和 Dreamweaver MX 2004 的单文件用起来挺不错的 启动速度也很快 跟原安装版相比只延时了1-2秒 而且只做好的单文件可以把你的注册信息和配置一起打包起来
制成符合你个人习惯的免注册版的单文件 怎么样 很酷吧
好了 废话不多说了 现在就教大家怎么制作单文件 以 PhotoShop 7.0 为例
先说说制作前的准备工作:
1、安装 VMWare ThinApp
2、准备好你要制作的软件的安装版 先不要安装哦
3、如果已经安装过 一定要卸载干净 包括注册表 不然软件需要的注册表内容可能无法获取哦
现在开始制作:
1、在 开始菜单→程序→WMware 打开 ThinApp Setup Capture 看到下面的界面
2、点 [next] 看到下面这个界面 有个 [Advanced Setting] 是选择扫面范围的如果你软件装在别的盘 可以勾一下别的盘 这里建议装在C盘 所以不要去高级设置了
3、点 [next] 软件会进行电脑注册表和其他相关内容的扫描 扫描后见到下面这个界面
这个界面在提示你 现在可以安装软件了
你要做的 就是最小化Thinapp的窗口 然后安装你要制作的软件,安装好后 请完成该软件的注册 配置等操作,这样才能制成符合你个人习惯的免注册版的单文件
我安装的是 PhotoShop 7.0 精简版
4、安装注册配置好软件后 再返回 VMWare ThinApp 点[next] 看到下面这个界面
这里要只选中你安装的软件 其他的都不要选,注意看后面软件的安装路径是不是你刚刚安装的软件以及是否是直接启动的那个文件
卸载文件也不需要选,我的 PhotoShop 7.0 这里有好多个一样的 我选其中一个
5、点[next] 又看到下面这个界面
这里下面有2个选项 选择软件在运行过程中存放的临时文件的地方,第一个是存放在用户文件夹内 第二个是存放在运行程序的文件夹内,我选择第一个 选择第二个生成的单文件启动时会生成一些文件 我不喜欢 不过关闭后会自动删除 还是很环保的
6、点[next] 又看到下面这个界面
这个不知道啥意思 直接默认的Merged模式就好了
7、点[next] 又看到下面这个界面
这里[project location]是选择单文件制作后生成的路径
[compression]是选择压缩方式 第一个不压缩 生成的速度较快 第二个压缩 生成的文件较小,我两个都试过了 第一个生成的有50多M 第二个只有25M 启动速度也差不多
8、点[next] 又看到下面这个界面
这里是最后一步了 记得点 [Build Now] 等生成后再关闭 不然前面的都白做了
如果你没有改动生成文件的存放路径的话 生成的文件在
C:\\Program Files\\VMware\\VMware ThinApp\\Captures\\***\\bin
其中***表示你制作的软件的文件名