Externaldlls; Forcedvirtualloadpaths; Isolatedmemoryobjects - VMware THINAPP 4.6 Manual

Hide thumbs Also See for THINAPP 4.6:
Table of Contents

Advertisement

ExternalDLLs

The ExternalDLLs parameter can force Windows to load specific DLL files from the virtual file system.
ThinApp sets an initial value that loads DLL files from the virtual file system and passes the loading process 
to Windows for DLL files on the physical file system. In some circumstances, Windows must load a DLL file 
in the virtual file system. You might have a DLL file that inserts itself into other processes using Windows 
hooks. The DLL file that implements the hook must be available on the host file system and Windows must 
load that file. When you specify a DLL file in the ExternalDLLs parameter, ThinApp extracts the file from the 
virtual file system to the sandbox and instructs Windows to load it.
Virtual dictation software is a type of software that might interface with native applications that pass 
information between DLLs. ThinApp can pass the loading of DLLs in the virtual environment to Windows to 
ensure that local applications can interface with the DLLs.
The ExternalDLLs parameter does not support a DLL file that depends on other DLL files in the virtual file 
system. In this case, Windows cannot load the DLL file.
Examples
You can modify the ExternalDLLs parameter to force Windows to load the inject.dll and injectme2.dll 
files from the virtual file system.
[BuildOptions]
ExternalDLLs=inject.dll;injectme2.dll

ForcedVirtualLoadPaths

The ForcedVirtualLoadPaths parameter instructs ThinApp to load DLL files as virtual DLL files even if the 
files reside outside the package. This parameter is useful when the application must load external system DLL 
files that depend on DLL files located in the package.
The DLL paths can contain macros. Use semicolons to separate multiple paths.
This parameter achieves the same result as the AddForcedVirtualLoadPath API function. See 
"AddForcedVirtualLoadPath" on page 119.
Examples
You can modify the ForcedVirtualLoadPaths parameter when you have an application that depends on 
external DLL files. When you capture Microsoft Office without Microsoft Outlook and a native version of 
Microsoft Outlook exists on the local system, you cannot send email from the virtual version of Microsoft Excel 
because the native envelope.dll file that is installed with Microsoft Outlook depends on the mso.dll file 
that ThinApp loads in the virtual environment. You can force ThinApp to load the envelope.dll file in the 
virtual environment instead of in the native environment.
[BuildOptions]
ForcedVirtualLoadPaths=%ProgramFilesDir%\Microsoft Office\Office10\envelope.dll

IsolatedMemoryObjects

The IsolatedMemoryObjects parameter lists the shared memory objects to isolate from other applications or 
from system objects.
Applications that use CreateFileMapping and OpenFileMapping Windows functions create shared memory 
objects. When you do not isolate memory objects, conflicts can occur between virtual applications and native 
applications sharing those objects. For example, you might have a two versions of an application with one 
version in the native environment and one version in the virtual environment. When these application 
versions use information in the same memory object, the applications can interfere with each other and fail. 
You might want to isolate shared memory objects to ensure that virtual applications and system objects cannot 
detect each other.
VMware, Inc.
Chapter 5 Configuring Package Parameters
75

Advertisement

Table of Contents
loading

Table of Contents