4.6

Table Of Contents
VMware, Inc. 75
Chapter 5 Configuring Package Parameters
ExternalDLLs
TheExternalDLLsparametercanforceWindowstoloadspecificDLLfilesfromthevirtualfilesystem.
ThinAppsetsaninitialvaluethatloadsDLLfilesfromthevirtualfilesystemandpassestheloadingprocess
toWindowsforDLLfilesonthephysicalfilesystem.In somecircumstances,Windowsmustloada
DLLfile
inthevirtualfilesystem.YoumighthaveaDLLfilethatinsertsitselfintootherprocessesusingWindows
hooks.TheDLLfilethatimplementsthehookmustbeavailableonthehostfilesystemandWindowsmust
loadthatfile.WhenyouspecifyaDLLfileinthe
ExternalDLLsparameter,ThinAppextractsthefilefromthe
virtualfilesystemtothesandboxandinstructsWindowstoloadit.
Virtualdictationsoftwareisatypeofsoftwarethatmightinterfacewithnativeapplicationsthatpass
informationbetweenDLLs.ThinAppcanpasstheloadingofDLLsinthevirtualenvironmentto
Windowsto
ensurethatlocalapplicationscaninterfacewiththeDLLs.
TheExternalDLLsparameterdoesnotsupportaDLLfilethatdependsonotherDLLfilesinthevirtualfile
system.Inthiscase,WindowscannotloadtheDLLfile.
Examples
YoucanmodifytheExternalDLLsparametertoforceWindowstoloadtheinject.dllandinjectme2.dll
filesfromthevirtualfilesystem.
[BuildOptions]
ExternalDLLs=inject.dll;injectme2.dll
ForcedVirtualLoadPaths
TheForcedVirtualLoadPathsparameterinstructsThinApptoloadDLLfilesasvirtualDLLfilesevenifthe
filesresideoutsidethepackage.ThisparameterisusefulwhentheapplicationmustloadexternalsystemDLL
filesthatdependonDLLfileslocatedinthepackage.
TheDLLpathscancontainmacros.Usesemicolons
toseparatemultiplepaths.
ThisparameterachievesthesameresultastheAddForcedVirtualLoadPathAPIfunction.See
AddForcedVirtualLoadPath”onpage 119.
Examples
YoucanmodifytheForcedVirtualLoadPathsparameterwhenyouhaveanapplicationthatdependson
externalDLLfiles.WhenyoucaptureMicrosoftOfficewithoutMicrosoftOutlookandanativeversionof
MicrosoftOutlookexistsonthelocalsystem,youcannotsendemailfromthevirtualversionofMicrosoftExcel
becausethenative
envelope.dllfilethatisinstalledwithMicrosoftOutlookdependsonthemso.dllfile
thatThinApploadsinthevirtualenvironment.YoucanforceThinApptoloadtheenvelope.dllfileinthe
virtualenvironmentinsteadofinthenativeenvironment.
[BuildOptions]
ForcedVirtualLoadPaths=%ProgramFilesDir%\Microsoft Office\Office10\envelope.dll
IsolatedMemoryObjects
TheIsolatedMemoryObjectsparameterliststhesharedmemoryobjectstoisolatefromotherapplicationsor
fromsystemobjects.
ApplicationsthatuseCreateFileMappingandOpenFileMappingWindowsfunctionscreatesharedmemory
objects.Whenyoudonotisolatememoryobjects,conflictscanoccurbetweenvirtualapplicationsandnative
applicationssharingthoseobjects.Forexample,you
mighthaveatwoversionsofanapplicationwithone
versioninthenativeenvironmentandoneversioninthevirtualenvironment.Whentheseapplication
versionsuseinformationinthesamememoryobject,theapplicationscaninterferewitheachotherandfail.
Youmightwanttoisolatesharedmemoryobjectsto
ensurethatvirtualapplicationsandsystemobjectscannot
detecteachother.