4.6.1

Table Of Contents
VMware, Inc. 63
Chapter 4 Updating and Linking Applications
Dynamic Updates Without Administrator Rights
Youcanupdateapplicationsdynamicallywithoutrequiringadministratorrights.For example,.NETbased
applicationsthatdownloadnewDLLfilesfromtheInternetaspartoftheirupdateprocessmustrunthe
ngen.exefiletogeneratenativeimageassembliesforstartupperformance.Intypicalcircumstances,the
ngen.exefilewritestoHKLMandC:\WINDOWS,bo
thofwhichareonlyaccessiblewithadministratoraccounts.
WithThinApp,thengen.exefilecaninstallnativeimageassembliesonguestuseraccountsbutstoreschanges
inauserspecificdirectory.
Youcanupdatethepackageonacentralcomputerandpushthechangestoclientmachinesortocentral
netw
orksharesasanewcapturedexecutablefile.Useoneofthefollowingoptionsforapplyingupdates:
Duringthesetupcaptureprocess.
Insidethevirtualenvironment.
Applicationswithautoupdatecapabilitiescanundergoupdates.Iftheupdateisapatch.exefile,the
patchprogramcanruninthevirtualenvironmentandrunfromacmd.exefileentrypoint.Changesoccur
inthesandboxduringautomaticupdatesormanualupdatestoallowyoutoreverttotheori
ginalversion
bydeletingthesandbox.
Ifyouapplypatchesinthevirtualenvironmentonacentralpackagingmachine,youcanusethe
sbmerge.exeutilitytomergesandboxchangesmadebytheupdatewiththeapplication.See
ApplicationUpdatesThattheAdministratorTriggersonpage 60.
Inthecapturedproject.
Ifyoumustupdateasmallsetoffilesorregistrykeys,replacethefilesinthecapturedproject.
This approachisusefulforsoftwaredeveloperswhointegrateThinAppbuildswiththeirworkflow.
Side-by-Side Upgrading of Running Applications on a Network Share
WithThinApp,youcanupgradeorrollbackanapplicationthatisrunningonanetworkshareformultiple
users.Thissidebysideupgradeprocessoccurswhentheuserquitstheapplicationandstartsitasecondtime.
InTerminalServerenvironments,youcanhavemultipleusersrunningdifferentversionsatthesametime
du
ringthetransitionperiod.
File Locks
Startinganapplicationlockstheexecutablefilepackage.Youcannotreplace,delete,ormovetheapplication.
Thisfilelockensuresthatanycomputeroruserwhoaccessesaspecificversionofanapplicationcontinuesto
havethatversionavailableaslongastheapplicationprocessesandsubprocessesarerunning.
Ifyoustoreanapplicat
ioninacentrallocationformanyusers,thisfilelockpreventsadministratorsfrom
replacingapackagedexecutablefilewithanewversionuntilallusersexittheapplicationandreleasetheir
locks.
Upgrade a Running Application
Youcancopyanewversionofanapplicationintoanexistingdeploymentdirectorywithahigherfilename
extension,suchas.1or.2.ThisprocedureusesFirefoxasasampleapplication.
Youdonothavetoupdateshortcuts.
Upgrade a running application
1Deploytheoriginalversionoftheapplication,suchasFirefox.exe.
2Copytheapplicationtoacentralshareat\\<
server>\<share>\Firefox.exe.
AsamplelocationisC:\Program Files\Firefox\Firefox.exe.