VMware ThinApp详细使用教程Word文档下载推荐.docx
《VMware ThinApp详细使用教程Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《VMware ThinApp详细使用教程Word文档下载推荐.docx(30页珍藏版)》请在冰豆网上搜索。
下载(85.25KB)
2011-3-520:
18
接下来把要制作安装的程序拷贝到虚拟机里去
我拿
硕思闪客之锤5.2破解版为例
把安装包:
SothinkSWFQuicker5.2.exe
flex_sdk_setup_3_4_0_9271_1.exe
拷到虚拟机里去了
运行SetupCapture.exe
点下一步
设置扫描盘符和注册表位置,一般不需要设,
虚拟机里就一个C盘,安装时到默认路径就行
点扫描
扫描完成后,最小化SetupCapture界面
开始安装要制作的安装程序
安装好后运行一次安装的程序并根据个人喜好设置好,
把检查更新的一些选项去掉
关闭安装的程序,切换到SetupCapture界面点扫面
扫描完成选择运行的主程序,把不需要的运行程序勾掉。
选择一个主文件作为数据包程序,填写文件名称,默认是
安装程序文件名。
点下一步进行沙盘存档位置配置
有3个选项值
第1个是存档放到“X:
\DocumentsandSettings\当前用户\ApplicationData\Thinstall”
第2个是放到制作的程序运行同一目录下
第3个是自定义目录,支持系统环境通配符,例如:
%Temp%这个就代表系统临时文件夹,详细见下面系统环境通配符表
点击下一步选择运行模式有两个选项
第一个是Merged模式,
这个是允许更改保存的文件在对应的磁盘里可见,例如制作个Flash.swf保存到D:
\我的作品
就会在D:
\我的作品看到。
第二个是WriteCopy模式,这个是不允许更改保存的文件在对应的磁盘里可见,(注:
我的文档是个除外)
例如制作个Flash.swf保存到D:
\我的作品,不会在D:
\我的作品看到,可以到沙盘存档位置下找到。
一般都是用第一个Merged模式
点击下一步
有3个选项
第一个选择项目生成路径,默认在“SetupCapture\Captures\软件名”文件夹下
第二个是生成MSI安装包(一般用不到)不要勾选
第三个是是否压缩,一定要勾可以缩小生成单文件程序的大小。
我这还有个诀窍把虚拟机的虚拟磁盘改成NTFS压缩,对于有些文件生成时还可以压一些。
^_^
点击下一步生成项目文件
有两个按钮一个是编辑配置
一个是打开项目文件夹
点击打开项目文件夹
开始编辑配置文件
有几个项说明一下
生成的配置
;
Thisfilecanbeusedtoconfigurebuildandruntimeoptionsforpackages
Linesthatbeginwithasemicoloncontainonlycommentsanddonothaveanyeffect
Fordocumentationandtoobtainacompletelistofoptionsavailablevisit:
[Compression]
CompressionType=Fast
[Isolation]
DirectoryIsolationMode=Merged
[BuildOptions]
--------MSIParameters----------
EnableMSIFilenameifyouwanttogenerateaWindowsInstallerpackage.
MSIFilename=硕思闪客之锤.msi
MSIManufacturer=Microsoft
MSIProductVersion=1.0
MSIDefaultInstallAllUsers=1
MSIRequireElevatedPrivileges=1
MSIInstallDirectory=硕思闪客之锤(VMwareThinApp)
MSIProductCode={CD2E32F8-0C16-76E3-E9B6-FD269A4BDA6A}
MSIUpgradeCode={A76C592A-D578-AA06-0392-96C3094BC0BC}
MSIUseCabs=1
--------AppSyncParameters----------
AppSyncURL=
AppSyncUpdateFrequency=1d
AppSyncExpirePeriod=30d
AppSyncWarningPeriod=5d
AppSyncWarningFrequency=1d
AppSyncWarningMessage=Thisapplicationwillbecomeunavailableforusein%%remaining_days%%day(s)ifitcannotcontactitsupdateserver.Checkyournetworkconnectiontoensureuninterruptedservice.
AppSyncExpireMessage=Thisapplicationhasbeenunabletocontactitsupdateserverfor%expire_days%day(s),soitisunavailableforuse.Checkyournetworkconnectionandtryagain.
AppSyncUpdatedMessage=
AppSyncClearSandboxOnUpdate=0
--------ParametersusedonlyduringSetupCapture----------
SandboxPath=%Temp%
AccessDeniedMsg=Youarenotcurrentlyauthorizedtorunthisapplication.PleasecontactyourAdministrator.
CapturedUsingVersion=4.0.4-204871
OutDir=bin
--------GeneralPurposeParameters----------
SandboxName=SWFQuicker
InventoryName=SWFQuicker
PermittedGroups=Administrators;
RemoteDesktopUsers
RemoveSandboxOnExit=1
SandboxNetworkDrives=0
SandboxRemovableDisk=0
VirtualizeExternalOutOfProcessCOM=1
OptionalAppLinks=%ProgramFilesDir%\InternetExplorer\iexplore.exe
RequiredAppLinks=\\server\share\*.exe;
c:
\abs\path\file.exe
VirtualDrives=Drive=c,Serial=4c7cee6e,Type=FIXED;
Drive=f,Serial=cd52b63a,Type=FIXED
VirtualDrives=Drive=a,Serial=00000080,Type=REMOVABLE;
Drive=c,Serial=4c7cee6e,Type=FIXED;
Drive=d,Serial=4c7cee6e,Type=CDROM;
VirtualComputerName=MICROSOF-1D5C57
AnsiCodePage=936
LocaleIdentifier=2052
Ifyouhaveproblemsrunninga32bitapplicationunder64bitWindows,tryenablingthislinebeforebuildingtheproject
Wow64=0
[硕思闪客之锤.dat]
Source=%ProgramFilesDir%\SourceTec\SothinkSWFQuicker\SWFQuicker.exe
ReadOnlyData=bin\Package.ro.tvr
Disabled=1
MetaDataContainerOnly=1
[硕思闪客之锤.exe]
WorkingDirectory=%ProgramFilesDir%\SourceTec\SothinkSWFQuicker
[SWFQuicker.exe]
Shortcut=硕思闪客之锤.exe
[uninst.exe]
Source=%ProgramFilesDir%\SourceTec\SothinkSWFQuicker\uninst.exe
[cmd.exe]
Source=%SystemSystem%\cmd.exe
[regedit.exe]
Source=%SystemRoot%\regedit.exe
[iexplore.exe]
Source=%ProgramFilesDir%\InternetExplorer\iexplore.exe
更改后的配置
CachePath=%Temp%\SWFQuicker
WorkingDirectory=%ProgramFilesDir%\SourceTec\SothinkSWFQuicker
编辑后去掉了多余的编译文件例如
屏蔽了虚拟磁盘选项
原
更改后
去掉这行或前面加个英文状态下"
"
就行了
开启了结束程序后清除沙盘档案文件
这个根据个人喜好开启或关闭
加入一个临时链接执行文件储存目录的选项,
CachePath=自定义路径
CachePath=%Temp%\SWFQuicker这个就表示系统临时目录\SWFQuicker目录下
这个选项在配置生成是没有的需手动添加
(不加默认是X:
\DocumentsandSettings\当前用户\LocalSettings\ApplicationData\Thinstall\Cache目录下)
基本上动这几个选项就足够了
其它的我会陆续整理出来贴上
配置好后保存,删除项目目录下的一些垃圾文件例如:
卸载程序,升级程序等来减小生成体积
点击
build.bat编译
会在项目文件夹下Bin目录里生成你所要的单文件
拷到系统里试一试吧
系统环境通配符表
重要提示4.0.4版的thinreg.exe在注册关联文件时路径有问题,只能把制作的单文件放在盘符根下才能注册成功。
用QQ旋风关联.torrentBT种子文件
cmd命令
MicrosoftWindowsXP[版本5.1.2600]
(C)版权所有1985-2001MicrosoftCorp.
C:
\DocumentsandSettings\admin>
D:
\ProgramFiles\ThinAppTool\thinreg.exe"
"
\Pr
ogramFiles\ThinAppTool\QQ旋风.exe"
运行不会关联成功
需改成
\QQ旋风.exe"
把QQ旋风.exe放到D:
根下才会成功
4.6版的thinreg.exe没有这个Bug,请使用4.6版的thinreg.exe来注册关联。
4.6版thinreg.exe下载我的网盘
小窍门:
把要关联的单文件程序拖到thinreg.exe上即可实现上述关联cmd命令
初次接触这款软件的人会问都出4.6版了为什么不汉化4.6的,因为从4.5版开始,虽说支持windows7环境捕捉,但压缩率太差,做出来的文件太大,不信可以试试,呵呵。
提示:
用VMwareThinApp4.0.4版在xp环境制作出来的软件也可以在windows7里运行
如何去除生成文件版本信息里的许可信息
例:
ThinAppBuildDateTime20110317233401
ThinAppLicenseQQ:
105286641
ThinAppVersion4.0.4-204871
不要用ResHacker,PEExplorer,OllyDbg等软件来去,会破坏执行程序链接文件
建议用Uedit32来去除
打开后查找ThinApp这个的Unicode字符串
在查找里输入:
5400680069006E00410070007000
找到了后把前头500010000100
改成000010000100保存
就不会显示了在版本信息里去了
重要声明
有人说程序报毒其实是误报,原版就报我也没办法,我用的可牛扫描也报
原版也使用VMwareThinApp封包的我把原版文件从SetupCapture.exe中提取出来进行了汉化,
我就动了setup_capture.exe和tlink.exe两个文件,一个汉化,一个去提示。
原版图
扫描SetupCapture.exe报毒
我把原SetupCapture.exe解包提取出来文件扫描
我用的原版版本号为4.0.4-3614这是4.0.4最后一个版本,再高就是4.5版的了
不信可以自己试试去,还是那句话怕有毒就别用了
我在这下的原版:
用XX搜VMwareThinApp4.0.4自己找一个下载也一样,只要是4.0.4.XXXX版的boot_loader.exe都误报,
我的可牛本地查杀引擎不报毒,云查杀引擎报的。
补充几个实用的参数
FileTypes
注册文件关联
使用方法
FileTypes=文件扩展名
例如用MicrosoftOfficeWord2007.exe关联.docx.doc.dot文件
[MicrosoftOfficeWord2007.exe]
Source=%ProgramFilesDir%\MicrosoftOffice\OFFICE12\WINWORD.EXE
FileTypes=.docx.doc.dot
打包制作完后运行thinreg.exe注册文件关联命令即可,命令使用方法上面提到了,就不说了。
ExternalDLLs
设置一个虚拟系统的DLL在运行时加载到真实系统里。
这句话有人不大理解,我说明一下,用VMwareThinApp制作封包的文件运行时会以沙盘虚拟系统环境的形式来运行
(不懂沙盘什么意思的XX去),封包里的DLL文件不会注册到真实系统里去,和真实系统隔绝了,有一些特殊的软
件的DLL必需要注册到真实系统里才管用,所以就需要ExternalDLLs这个参数来强制加载注册到真实系统里去,与在
真实系统里使用regsvr32/s命令注册DLL是一样的。
ExternalDLLs=DLL文件名
实例注册inject.dll;
injectme2.dll到真实系统
ExternalDLLs=inject.dll;
injectme2.dll
ExternalCOMObjects
设置一个虚拟系统的COM接口函数在运行时创建到真实系统里。
ExternalCOMObjects=COM接口函数
实例{8BC3F05E-D86B-11D0-A075-00C04FB68820};
{7D096C5F-AC08-4F1F-BEB7-5C22C517CE39}
两个COM接口函数在真实系统里运行
ExternalCOMObjects={8BC3F05E-D86B-11D0-A075-00C04FB68820};
ForcedVirtualLoadPaths
强制关联一个虚拟的系统环境的DLL到真实系统环境DLL中去。
举例说明:
例如我在机子里装里MicrosoftOfficeOutlook2007,
我又制作了一个单文件的MicrosoftOfficeOutlook2007
在我点击软件或网页中的发送邮件时会触发我机子里装里MicrosoftOfficeOutlook2007,
而不会触发我制作的单文件的MicrosoftOfficeOutlook2007,因为在触发这个事件时mso.dll会调用
真实系统里的envelope.dll,而不会调用单文件里的MicrosoftOfficeOutlook2007的envelope.