本帖最后由 q27618349 于 2011-10-21 11:00 编辑
VMware ThinApp这个软件是一款虚拟环境部署软件,
现在常见的一些单文件版的软件都是用它来制作的。
例如:单文件版Microsoft Office,Photoshop,优化大师等软件,
此软件的好处为可以对一些安装软件进行封装,
从而省去了重做系统在从新安装软件的麻烦,而且运行是不会对
系统残留垃圾文件和注册表键值。有人说用WinRaR来制作来制作不一样吗?VMware ThinApp和WinRaR是两种概念,winrar需要把封装的程序全部释放到硬盘上才能运行,VMware ThinApp封装的程序不需释放到硬盘上即可运行。
运行setup_capture.exe
点下一步
设置扫描盘符和注册表位置
设置完了点扫描
扫描完成后,最小化Setup Capture界面
开始安装要制作的程序
安装好后运行一次安装的程序并根据个人喜好设置好,
把检查更新的一些选项去掉
关闭安装的程序,切换到Setup Capture界面点扫面
扫描完成选择运行的主程序,把不需要的运行程序勾掉。
选择一个主文件作为数据包程序,填写文件名称,默认是
安装程序文件名。
点下一步进行沙盘存档位置配置
有3个选项值
第1个是存档放到“X:\Documents and Settings\当前用户\Application Data\Thinstall”
第2个是放到制作的程序运行同一目录下
第3个是自定义目录,支持系统环境通配符,例如:%Temp% 这个就代表系统临时文件夹,详细见下面系统环境通配符表
点击下一步选择运行模式有两个选项
第一个是Merged模式, 这个是允许更改保存的文件在对应的磁盘里可见,例如制作个Flash.swf保存到D:\我的作品
就会在D:\我的作品看到。
第二个是WriteCopy模式,这个是不允许更改保存的文件在对应的磁盘里可见,(注:我的文档是个除外)
例如制作个Flash.swf保存到D:\我的作品,不会在D:\我的作品看到,可以到沙盘存档位置下找到。
一般都是用第一个Merged模式
点击下一步
有3个选项
第一个选择项目生成路径,默认在“Setup Capture\Captures\软件名”文件夹下
第二个是生成MSI安装包(一般用不到)不要勾选
第三个是是否压缩,一定要勾可以缩小生成单文件程序的大小。
点击下一步生成项目文件
有两个按钮一个是编辑配置
一个是打开项目文件夹
开始编辑配置文件
生成的配置:
; This file can be used to configure build and runtime options for packages
; Lines that begin with a semicolon contain only comments and do not have any effect
; For documentation and to obtain a complete list of options available visit:
;
; http://www.vmware.com/info?id=765
;
[Compression]
CompressionType=Fast
[Isolation]
DirectoryIsolationMode=Merged
[BuildOptions]
;-------- MSI Parameters ----------
;Enable MSIFilename if you want to generate a Windows Installer package.
;MSIFilename=Defraggler.msi
;MSIManufacturer=Unknown
;MSIProductVersion=1.0
;MSIDefaultInstallAllUsers=1
;MSIRequireElevatedPrivileges=1
;MSIInstallDirectory=Defraggler (VMware ThinApp)
;MSIProductCode={E62B1234-61AC-9B52-C77F-C3F73E889787}
;MSIUpgradeCode={E8162EC7-8936-33D0-48E5-D053BA29D29C}
;MSIUseCabs=1
;-------- AppSync Parameters ----------
;AppSyncURL=https://example.com/some/path/PackageName.exe
;AppSyncUpdateFrequency=1d
;AppSyncExpirePeriod=30d
;AppSyncWarningPeriod=5d
;AppSyncWarningFrequency=1d
;AppSyncWarningMessage=This application will become unavailable for use in %%remaining_days%% day(s) if it cannot contact its update server. Check your network connection to ensure uninterrupted service.
;AppSyncExpireMessage=This application has been unable to contact its update server for %expire_days% day(s), so it is unavailable for use. Check your network connection and try again.
;AppSyncUpdatedMessage=
;AppSyncClearSandboxOnUpdate=0
;-------- Parameters used only during Setup Capture ----------
SandboxPath=%Desktop%
AccessDeniedMsg=您目前尚未授权来运行此应用程序。请与您的管理员。
CapturedUsingVersion=4.0.4-204871
OutDir=bin
;-------- General Purpose Parameters ----------
SandboxName=Defraggler
InventoryName=Defraggler
;PermittedGroups=Administrators;Remote Desktop Users
;RemoveSandboxOnExit=1
;SandboxNetworkDrives=1
;SandboxRemovableDisk=1
;VirtualizeExternalOutOfProcessCOM=0
;OptionalAppLinks=plugins\*.exe
;RequiredAppLinks=\\server\share\*.exe;c:\abs\path\file.exe
VirtualDrives=Drive=c, Serial=021e756b, Type=FIXED; Drive=d, Serial=64cddca4, Type=FIXED
;VirtualDrives=Drive=c, Serial=021e756b, Type=FIXED; Drive=d, Serial=64cddca4, Type=FIXED; Drive=e, Serial=64cddca4, Type=CDROM
;VirtualComputerName=ZCQ-PC
AnsiCodePage=936
LocaleIdentifier=2052
LocaleName=zh-CN
; If you have problems running a 32 bit application under 64 bit Windows, try enabling this line before building the project
;Wow64=0
[{D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat]
Source=%drive_D%\Program Files\Defraggler\Defraggler.exe
ReadOnlyData=bin\Package.ro.tvr
MetaDataContainerOnly=1
[Defraggler.exe]
Source=%drive_D%\Program Files\Defraggler\Defraggler.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
WorkingDirectory=%drive_d%\Program Files\Defraggler
Shortcuts=%Programs%\Defraggler;%drive_C%\Users\All Users\Microsoft\Windows\Start Menu\Programs\Defraggler
[Uninstall.exe]
Disabled=1
Source=%drive_D%\Program Files\Defraggler\uninst.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
WorkingDirectory=%drive_d%\Program Files\Defraggler
Shortcuts=%Programs%\Defraggler;%drive_C%\Users\All Users\Microsoft\Windows\Start Menu\Programs\Defraggler
[访问 下载港软件站.exe]
Disabled=1
Source=%drive_D%\Program Files\Defraggler\Defraggler.url
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
WorkingDirectory=%drive_d%\Program Files\Defraggler
Icon=%drive_d%\Program Files\Defraggler\pcos.ico
Shortcuts=%Programs%\Defraggler;%drive_C%\Users\All Users\Microsoft\Windows\Start Menu\Programs\Defraggler
[1.exe]
Disabled=1
Source=%Desktop%\1.jpg
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Shortcuts=%Desktop%
[2.exe]
Disabled=1
Source=%Desktop%\2.jpg
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Shortcuts=%Desktop%
[3.exe]
Disabled=1
Source=%Desktop%\3.jpg
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Shortcuts=%Desktop%
[4.exe]
Disabled=1
Source=%Desktop%\4.jpg
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Shortcuts=%Desktop%
[df.exe]
Source=%drive_D%\Program Files\Defraggler\df.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
[uninst.exe]
Source=%drive_D%\Program Files\Defraggler\uninst.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
[cmd.exe]
Source=%SystemSystem%\cmd.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
[regedit.exe]
Source=%SystemRoot%\regedit.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
[iexplore.exe]
Source=%ProgramFilesDir%\Internet Explorer\iexplore.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
更改后的配置:
[Compression]
CompressionType=Fast
[Isolation]
DirectoryIsolationMode=Merged
[BuildOptions]
SandboxPath=%TEMP%
AccessDeniedMsg=您目前尚未授权来运行此应用程序。请与您的管理员。
CapturedUsingVersion=4.0.4-204871
OutDir=bin
;-------- General Purpose Parameters ----------
SandboxName=Defraggler
InventoryName=Defraggler
;PermittedGroups=Administrators;Remote Desktop Users
;RemoveSandboxOnExit=1
;SandboxNetworkDrives=1
;SandboxRemovableDisk=1
;VirtualizeExternalOutOfProcessCOM=0
;OptionalAppLinks=plugins\*.exe
;RequiredAppLinks=\\server\share\*.exe;c:\abs\path\file.exe
;VirtualDrives=Drive=c, Serial=021e756b, Type=FIXED; Drive=d, Serial=64cddca4, Type=FIXED
;VirtualDrives=Drive=c, Serial=021e756b, Type=FIXED; Drive=d, Serial=64cddca4, Type=FIXED; Drive=e, Serial=64cddca4, Type=CDROM
;VirtualComputerName=ZCQ-PC
AnsiCodePage=936
LocaleIdentifier=2052
LocaleName=zh-CN
; If you have problems running a 32 bit application under 64 bit Windows, try enabling this line before building the project
;Wow64=0
[{157001C1-B779-47CB-ACDF-1380E626CCBB}.dat]
Source=%drive_D%\Program Files\Defraggler\Defraggler.exe
ReadOnlyData=bin\Package.ro.tvr
Disabled=1
MetaDataContainerOnly=1
[Defraggler.exe]
ReadOnlyData=bin\Package.ro.tvr
Source=%drive_D%\Program Files\Defraggler\Defraggler.exe
WorkingDirectory=%drive_d%\Program Files\Defraggler
Shortcuts=%Programs%\Defraggler;%drive_C%\Users\All Users\Microsoft\Windows\Start Menu\Programs\Defraggler
编辑后去掉了多余的编译文件例如:
[1.exe]
Disabled=1
Source=%Desktop%\1.jpg
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Shortcuts=%Desktop%
[2.exe]
Disabled=1
Source=%Desktop%\2.jpg
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Shortcuts=%Desktop%
[3.exe]
Disabled=1
Source=%Desktop%\3.jpg
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Shortcuts=%Desktop%
[4.exe]
Disabled=1
Source=%Desktop%\4.jpg
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Shortcuts=%Desktop%
[df.exe]
Source=%drive_D%\Program Files\Defraggler\df.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
[uninst.exe]
Source=%drive_D%\Program Files\Defraggler\uninst.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
[cmd.exe]
Source=%SystemSystem%\cmd.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
[regedit.exe]
Source=%SystemRoot%\regedit.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
[iexplore.exe]
Source=%ProgramFilesDir%\Internet Explorer\iexplore.exe
Shortcut={D29DE22E-983A-4740-9CDE-274D2BFE3D8D}.dat
Disabled=1
屏蔽了虚拟磁盘选项
原
VirtualDrives=Drive=c, Serial=4c7cee6e, Type=FIXED; Drive=f, Serial=cd52b63a, Type=FIXED
更改后
;VirtualDrives=Drive=c, Serial=4c7cee6e, Type=FIXED; Drive=f, Serial=cd52b63a, Type=FIXED
去掉这行或前面加个英文状态下";"就行了
开启了结束程序后清除沙盘档案文件
RemoveSandboxOnExit=1
这个根据个人喜好开启或关闭
加入一个临时链接执行文件储存目录的选项,
CachePath=自定义路径
CachePath=%Temp%\SWFQuicker这个就表示系统临时目录\SWFQuicker目录下
这个选项在配置生成是没有的需手动添加
(不加默认是X:\Documents and Settings\当前用户\Local Settings\Application Data\Thinstall\Cache目录下)
基本上动这几个选项就足够了
配置好后保存,删除项目目录下的一些垃圾文件例如:卸载程序,升级程序等来减小生成体积
点击
build.bat编译
完成后会在项目文件夹下Bin目录里生成你所要的单文件
制作的单文件软件:http://115.com/file/bh0dvh8g# Defraggler.exe
制作单文件软件的工具:Setup_Capture.rar
这个ESS报毒,如果不放心,在虚拟机里面用(虚拟机里面文件少,制作也快些)
ps:由于自身原因,帖子的排版可能很乱,大家将就点啊
|