Hello everyone, John Behneman here again. The purpose of the article is to highlight some very simple OSD file edits/tweaks that can potentially fix a large number of most common issues we see here in product support. Chances are you can save yourself a lot of time and money if you try these simple troubleshooting techniques before calling us for support.
As a test you should always edit the OSD file in the App-V client cache on the App-V client, not on the original package until you know which parameter is causing the problem. It is always a good policy to backup the OSD cache file before you start editing so you can return it to its original configuration should none of the edits resolve your issue. If you corrupt the cached OSD file and you did not make a backup, you can always redeploy the package or do a DC refresh if you are using an App-V Management Server.
NOTE Before doing anything else, be sure you have the latest version of the App-V client. That alone can fix a lot of issues.
How to launch App-V Application OSD in Notepad from the Client Cache
To find the cached OSD for an App-V application, launch the Application Virtualization Client Admin console, highlight the Application node of in the left hand pane, find the desired application in the right hand pane and double-click on it. Find the Local OSD File: parameter on the General Tab and copy the parameter. Type Notepad<space> in the Start -> Run and then paste the Local OSD File: parameter after the space in Notepad so you have something similar to following string:
notepad C:\ProgramData\Microsoft\Application Virtualization Client\SoftGrid Client\OSD Cache\3277aa21-2d5c-4bc4-a396-8f20c7953fec.osd
Now, click OK and Notepad will open the cached OSD of the application you wish to modify so you can add tags or modify existing tag in the appropriate section of the OSD. The following is a graphical representation of the process:
Figure 1 - Copy the Local OSD File parameter.
Figure 2 - Type notepad plus a space and then paste the Local OSD File parameter.
Figure 3 -The Cached OSD is presented for editing.
Editing tags 1-5 in the OSD
Figure 4 - Snippet of an App-V OSD file
Test items 1,3,4 in Figure 4 should be tested on every Application that exhibits a problem when virtualize with App-V, items 2 & 5 should be done only in specific situations to be explained in more detail below.
Test item 1:
For more information:
A Look Under the Covers - The LOCAL_INTERACTION_ALLOWED Tag : http://blogs.technet.com/b/appv/archive/2007/09/20/a-look-under-the-covers-the-local-interaction-allowed-tag.aspx
Test item 2:
If an App-V application fails to shutdown properly or causes anomalies with the OS when the application is shutdown, try setting the following value to TRUE.
An application may not shut down completely when you exit the application in Microsoft SoftGrid : http://support.microsoft.com/kb/931589 Test item 3:
When launching an application virtualized using Microsoft App-V, the application hangs for 10 minutes and then terminates : http://support.microsoft.com/kb/2195120
A known good App-V virtual application package may fail with error 19-00001003 after adding a pre-launch script : http://blogs.technet.com/b/appv/archive/2011/10/20/a-known-good-app-v-virtual-application-package-may-fail-with-error-19-00001003-after-adding-a-pre-launch-script.aspx
Test item 4:
On rare occasions the working directory parameter can cause problems, as a test try removing the value altogether.
<WORKINGDIR>%CSIDL_PROGRAM_FILES%\Microsoft Host Integration Server 2010\system\<WORKINGDIR>
<WORKINGDIR> Examples - Specifying a Working Directory : http://blogs.technet.com/b/virtualworld/archive/2007/11/07/workingdir-examples-specifying-a-working-directory.aspx
Microsoft Application Virtualization 4.6 SP1 Sequencing Guide : http://download.microsoft.com/download/F/7/8/F784A197-73BE-48FF-83DA-4102C05A6D44/App-V/App-V%204.6%20Service%20Pack%201%20Sequencing%20Guide.docx
Test item 5:
Typically the problem these tags cause is that short-cuts for a particular application may not be available to users that have been granted access to the application. You may see the following entry in the sftlog.txt on the App-V client:
The app manager could not create an application from '\\softgriddc\content\DefaultApp.osd' (rc 07708A44-00000007) Removing these entries altogether will deploy this application to any Operating System, even to Operating Systems for which the application may not be designed. In this situation the cached OSD will not exist on the client and you must edit the OSD from the content share on the App-V Management server or in the original package before deployment.
</VM> <OS VALUE="Win7"/> <OS VALUE="Win764"/> </IMPLEMENTATION>
Error xxxxxx44-00001007 in the SFTLOG.TXT file : http://blogs.technet.com/b/appv/archive/2008/10/29/error-xxxxxx44-00001007-in-the-sftlog-txt-file.aspx
Updated OS VALUE XML Tag Reference and Supported Client Versions : http://blogs.technet.com/b/appv/archive/2009/10/29/updated-os-value-xml-tag-reference-and-supported-client-versions.aspx
If your package is still not working properly after the aforementioned tweaks, grab a cup of coffee and startup Process Monitor in the bubble.
NOTE For more information on how to use Process Monitor please see How to run Process Monitor (ProcMon) inside the App-V virtual environment - http://blogs.technet.com/b/appv/archive/2012/04/24/how-to-run-process-monitor-procmon-inside-the-app-v-virtual-environment.aspx
Please be sure to return all the OSD tag values back to the original settings, I would advise doing this after each test item so you know exactly what fixed the issue. It is possible that you may need to tweak more than one value to get some applications working. If you are editing the OSD in the App-V Client Cache, and you deploy your App-V Applications using an App-V Management Server you can always do a DC refresh to return the OSD to its original configuration.
For suffering through all the steps above here is an additional couple of nuggets of information.
Bonus Test 1:
There are 2 types of packages a MNT, which is the preferred method, where the application is installed to directory on the Q: drive during sequencing, and VFS where the application is installed to the C: drive.
Some applications have to be installed to the C: drive to work correctly when virtualized. If the application fails to launch correctly when you sequence it to Q: (MNT), please re-sequence the application by installing it to the C: drive. In some situations the inverse is true, I have had situations where sequencing an application to the Q: drive fixed a problem. The bottom line is you may need to experiment to determine which install type (MNT or VFS) works best for the application. For more information please see the following references:
The VFS versus MNT Install : http://blogs.technet.com/b/appv/archive/2007/07/16/the-vfs-versus-mnt-install.aspx
Best practices to use for sequencing in Microsoft App-V (SoftGrid) : http://support.microsoft.com/kb/932137/en-us
Bonus Test 2:
By default “Enforce Security Descriptors” is enabled on the Sequencer, sometimes this feature can cause problems, try disabling it by unchecking it. To do this start the sequencer, choose “Modify an Existing Virtual Application Package”, then “Edit Package” and browse to the *.sprj file in the package and select it and click Open then Edit. This will load the following screen, select the Deployment tab and uncheck “Enforce Security Descriptors”, now go to File and Save and it will update the package. You will need to redeploy the package for testing.
Figure 6 – Sequencer Package edit console
Improving Security During App-V Sequencing : http://technet.microsoft.com/en-us/library/ee662362.aspx
Bonus Test 3:
If you suspect that System-Guard (protective App-V bubble) is causing your issue you can use the following registry tweak to determine for certain if it is the cause, please only do this as a test, leaving this in production is not recommended. To gain a complete understanding of this tweak please read the following blog post before implementing it.
Allowing Better Interaction to App-V Virtual Applications : http://blogs.technet.com/b/deploymentguys/archive/2011/07/05/allowing-better-interaction-to-app-v-virtual-applications.aspx
Find the following registry hive and add a string value of N+1 where N is the highest number listed in the ObjExclusions registry hive, in most cases the next value will be 94 (on my machine the highest number is 93) and give it a data value of *. After making this change either reboot the test machine or restart the Application Virtualization Client service.
Figures 7 & 8 - Registry
Error message when you try to sequence Abra Suite in Microsoft SoftGrid: "The procedure entry point GetFileVersionInfoA could not be located in the dynamic link library VERSION.DLL" : http://support.microsoft.com/kb/931979
Error: HP Universal Printing | Invalid Address when using the Hewlett-Packard Universal Printer Drivers with Microsoft Application Virtualization : http://blogs.technet.com/b/appv/archive/2011/10/13/error-hp-universal-printing-invalid-address-when-using-the-hewlett-packard-universal-printer-drivers-with-microsoft-application-virtualization.aspx
I want to thank Alvin Morales, Mark Stanfill and J.C. Hornbeck for their assistance and guidance during the process of creating this post.
John Behneman | System Center Support Engineer
Get the latest System Center news on Facebook and Twitter:
App-V Team blog: http://blogs.technet.com/appv/ ConfigMgr Support Team blog: http://blogs.technet.com/configurationmgr/ DPM Team blog: http://blogs.technet.com/dpm/ MED-V Team blog: http://blogs.technet.com/medv/ Orchestrator Support Team blog: http://blogs.technet.com/b/orchestrator/ Operations Manager Team blog: http://blogs.technet.com/momteam/ SCVMM Team blog: http://blogs.technet.com/scvmm Server App-V Team blog: http://blogs.technet.com/b/serverappv Service Manager Team blog: http://blogs.technet.com/b/servicemanager System Center Essentials Team blog: http://blogs.technet.com/b/systemcenteressentials WSUS Support Team blog: http://blogs.technet.com/sus/
The Forefront Server Protection blog: http://blogs.technet.com/b/fss/ The Forefront Endpoint Security blog : http://blogs.technet.com/b/clientsecurity/ The Forefront Identity Manager blog : http://blogs.msdn.com/b/ms-identity-support/ The Forefront TMG blog: http://blogs.technet.com/b/isablog/ The Forefront UAG blog: http://blogs.technet.com/b/edgeaccessblog/
<p>I presume you wanted to write "when sequencing an app to the C: fixed a problem"</p>
<p>Semantics - he means "by installing it to the C: drive during the sequencing monitoring phase."</p>