5.0
Table Of Contents
- ThinApp User’s Guide
- Contents
- About This Book
- Installing ThinApp
- Capturing Applications
- Phases of the Capture Process
- Preparing to Capture Applications
- Capturing Applications with the Setup Capture Wizard
- Create a System Image Before the Application Installation
- Rescan the System with the Installed Application
- Defining Entry Points as Shortcuts into the Virtual Environment
- Set Entry Points
- Manage with VMware Horizon Application Manager
- Set User Groups
- Defining Isolation Modes for the Physical File System
- Set File System Isolation Modes
- Storing Application Changes in the Sandbox
- Customize the Sandbox Location
- Send Anonymous Statistics to VMware
- Customize ThinApp Project Settings
- Defining Package Settings
- Customize Package Settings
- Opening Project and Parameter Files
- Build Virtual Applications
- Advanced Package Configuration
- Capturing Internet Explorer on Windows XP
- Capturing Multiple Application Installers with ThinApp Converter
- Deploying Applications
- ThinApp Deployment Options
- Establishing File Type Associations with the thinreg.exe Utility
- Building an MSI Database
- Controlling Application Access with Active Directory
- Starting and Stopping Virtual Services
- Using ThinApp Packages Streamed from the Network
- Using Captured Applications with Other System Components
- Performing Paste Operations
- Accessing Printers
- Accessing Drivers
- Accessing the Local Disk, the Removable Disk, and Network Shares
- Accessing the System Registry
- Accessing Networking and Sockets
- Using Shared Memory and Named Pipes
- Using COM, DCOM, and Out-of-Process COM Components
- Starting Services
- Using File Type Associations
- Sample Isolation Mode Configuration Depending on Deployment Context
- Updating and Linking Applications
- Application Updates That the End User Triggers
- Application Sync Updates
- Using Application Sync in a Managed or Unmanaged Environment
- Update Firefox 2.0.0.3 to Firefox 3 with Application Sync
- Fix an Incorrect Update with Application Sync
- Application Sync Effect on Entry Point Executable Files
- Updating thinreg.exe Registrations with Application Sync
- Maintaining the Primary Data Container Name with Application Sync
- Completing the Application Sync Process When Applications Create Child Processes
- Application Link Updates
- View of the Application using Application Link
- Link a Base Application to the Microsoft .NET Framework
- Set Up Nested Links with Application Link
- Affecting Isolation Modes with Application Link
- PermittedGroups Effect on Linked Packages
- Sandbox Changes for Standalone and Linked Packages
- Import Order for Linked Packages
- File and Registry Collisions in Linked Packages
- VBScript Collisions in Linked Packages
- VBScript Function Order in Linked Packages
- Storing Multiple Versions of a Linked Application in the Same Directory
- Using Application Sync for a Base Application and Linked Packages
- Application Sync Updates
- Application Updates That the Administrator Triggers
- Automatic Application Updates
- Upgrading Running Applications on a Network Share
- Sandbox Considerations for Upgraded Applications
- Updating the ThinApp Version of Packages
- Application Updates That the End User Triggers
- Locating the ThinApp Sandbox
- Creating ThinApp Snapshots and Projects from the Command Line
- ThinApp File System Formats and Macros
- Creating ThinApp Scripts
- Callback Functions
- Implement Scripts in a ThinApp Environment
- API Functions
- Monitoring and Troubleshooting ThinApp
- Glossary
- Index
VMware, Inc. 91
Chapter 9 Monitoring and Troubleshooting ThinApp
[FS missing in view 0][fs entry not found %SystemRoot%\foobar]
Perform Advanced Examination for cmd.exe Log Entries
AmorethoroughexaminationofanentryfromthePotential Errorssectionofatracefilemightinvolve
searchingthefullbodyoftheLogMonitortracefileforthatspecificentryandreviewingthesystemcallsand
conditionsleadingtothepotentialerror.
Forexample,thefollowingentryforthecmd.exe
utilityinthePotential Errorssectionmightrequirea
morethoroughexaminationthroughouttheLogMonitortracefile.
001550 00185994582578 00000c78 00001334 *** FindFirstFileW ’C:\test\cmd_test\bin\foobar.*' ->
INVALID_HANDLE_VALUE *** failed
Perform an advanced examination of the cmd.exe entry
1Todeterminewhythecmd.exeutilityprobesc:\test\cmd_test\bin,scanthelogforthislogentry
numberanddeterminewhatoccursbeforethiscall.
2Todeterminethelocationswherethecmd.exeutilityobtainsthec:\test\cmd_test path,scanthelog
forGetCurrentDirectoryWandGetFullPathNameWentries.
000861 00184029262193 00000c78 00001334 cmd.exe :4ad01580->USERENV.dll :769c0396
GetCurrentDirectoryW (IN DWORD
nBufferLength=104h)
000862 00184037503381 00000c78 00001334 GetCurrentDirectoryW -> 0x14 (C:\test\cmd_test\bin)
000863 00184355766742 00000c78 00001334 cmd.exe :4ad01580<-USERENV.dll :769c0396
GetCurrentDirectoryW ->DWORD=14h
(OUT LPWSTR lpBuffer=*4AD34400h->L"C:\test\cmd_test\bin")
000864 00184362179933 00000c78 00001334 cmd.exe :4ad05b74->ole32.dll :774e03f0 Getfile type
(IN HANDLE hFile=7h)
000865 00185208991133 00000c78 00001334 Getfile type 7 -> 0x2
000866 00185212957170 00000c78 00001334 cmd.exe :4ad05b74<-ole32.dll :774e03f0 Getfile type
->DWORD=2h ()
.
.
001533 00185221099590 00000c78 00001334 cmd.exe :4ad01b0d<-kernel32.dll:7c80ac0f SetErrorMode
->UINT=0h ()
0001534 00185221215368 00000c78 00001334 cmd.exe :4ad01b13->kernel32.dll:7c80ac0f
SetErrorMode (IN UINT uMode=1h)
001535 00185221343489 00000c78 00001334 cmd.exe :4ad01b13<-kernel32.dll:7c80ac0f SetErrorMode
->UINT=0h ()
001536 00185727216844 00000c78 00001334 cmd.exe :4ad01b24->IMM32.DLL :7639039b
GetFullPathNameW (IN LPCWSTR
lpFileName=*1638C0h->L."," IN DWORD nBufferLength=208h)
001537 00185731151471 00000c78 00001334 GetFullPathNameW . -> 20 (buf=C:\test\cmd_test\bin,
001538 00185734164499 00000c78 00001334 cmd.exe :4ad01b24<-IMM32.DLL :7639039b
GetFullPathNameW ->DWORD=14h
(OUT LPWSTR lpBuffer=*163D60h->L"C:\test\cmd_test\bin," OUT *lpFilePart=*13D8D4h
->*163D82h->L"bin")
.
.
001549 00185993599811 00000c78 00001334 cmd.exe :4ad01b5f->USERENV.dll :769c03fa
FindFirstFileW (IN LPCWSTR
lpFileName=*1638C0h->L"C:\test\cmd_test\bin\foobar.*")
001550 00185994582578 00000c78 00001334 FindFirstFileW ’C:\test\cmd_test\bin\foobar.*’ ->
INVALID_HANDLE_VALUE *** failed [system probe C:\test\cmd_test\bin\foobar.*
-> ffffffffh][no virtual or system matches]
Thecmd.exeutilityobtainsthefirstlocationbycallingGetCurrentDirectoryWandthesecondlocation
bycallingGetFullPathNameWwithʺ.ʺasthepathspecifies.Thesecallsreturnthepathforthecurrent
workingdirectory.Thelogfileshowsthatthecmd.exeutilitycreatestheC:\test\cmd_test\bin>
prompt.TheutilityqueriesthePROMPTenvironment
variablethatreturns$P$Gandusesthe
WriteConsoleWAPIfunctiontoprinttheprompttothescreenafterinternallyexpanding$P$Gto
C:\test\cmd_test\bin>.