绿色单文件制作工具VMware ThinApp教程
VMware ThinApp应用程序虚拟化工具,它将程序相关资源如exe、dll、ocx、注册表项等封装到单一的EXE文件中,程序运行时需要的资源也都从这个单EXE的虚拟环境中,从而实现与操作系统的隔离。VMware ThinApp可以实现在同一操作系统上运行任何版本的虚拟应用程序而不发生冲突。你甚至可以运行同一应用程序的多个版本。将VMware thinapp应用到到现有的基础管理设施上,并加快您的软件开发和桌面部署,使得应用程序的部署有效率、安全。
借助VMware ThinApp的封装可以制作比较纯正的单文件软件,而简单设置参数后,VMware ThinApp也能充当制作便携软件的角色。废话说完,看图!
运行程序ThinApp以向导方式来完成程序打包过程,点击Next。
如需要自定义扫描配置,点击Advanced settings,这里可以设置需要扫描的驱动器和注册表。
点击OK返回之后,点击Next后ThinApp会以扫描当前文件系统和注册表并形成一个快照,并且ThinApp会保存系统快照。
待系统快照完成之后,VMware ThinApp开始捕获过程,即开始安装并配置好你需要封装的程序,建议将程序安装到默认位置(这里安装PS8.01精简版)。
安装完成后点击NEXT再次扫描系统。
选择程序入口点,即从哪个程序开始启动,一般就是主程序文件,一般情况ThinApp会自动选择好。
对Sandbox Location配置,Sandbox和我们所使用的沙箱一般,这里的Sandbox是Thinapp的缓存目录\及程序所作更改的保存路径,以后再运行封装的程序时会从Sandbox中读取配置信息,如果删除Sandbox的话,程序就会复原为默认状态(即快照时的状态)。
单击Next进入System Isolation模式设置(我们选择Merged isolation mode)。
这里可以设置Thinapp文件的保存路径,还可以设置封装时的压缩模式——No compression为不压缩,Fast compression为快速压缩模式;建议选择「Fast compression」,能提供57%的压缩率,程序启动时间跟No compression相差不多,就是第一次封装的时候时间较长。
保存完之后,我们看到了Build Now直接以默认参数生成虚拟化程序,或Browse Project返回到文件目录自定义更多高级选项,这里我们选择以默认参数生成虚级化程序(Build Now),封装后的程序在工程目录的bin文件夹中。
如果选择了Fast compression,压缩时间会比较长……
“PS8.01-单文件”已经制作完成!!!
补充一下:上图选择Browse Project,可以删除些不必要的文件减少封装后的文件大小,如删除帮助文件、卸载程序等,而这里的Package.ini就是封装参数配置文件,由build.bat调用,修改参数后重新运行「build.bat」即可生成虚拟化程序。
关于Package.ini
压缩和分离模式,这在前面的向导已经设置过了,如果不满意地方,也可以直接在「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。