Nothing works without a profile

Profiling

Publishing Performance and UEM

The publishing performance of App-V 5 (in simple terms, the period between the user logon and the chance to launch virtual applications) was not exactly outstanding in the first manifestations of App-V 5 – it could take 30 seconds or even a few minutes before the App-V client had created the integration points to the local operating system (particularly links, file type associations, or shell extensions) in a new session. Because the App-V client executes these actions rather meticulously (i.e., slowly), the idea arose to delegate the task of creating integration points to profile management solutions. After all, along with backing up and restoring application settings, shaping the complete user environment is a core competency of UEM. If App-V packages are assigned on a per-computer basis, there is no need to do anything because the integration points are stored in machine-global locations and are thus available even before the user logs on.

A user-based allocation of App-V applications should have advantages: The App-V client creates unique shortcuts, shell extensions, protocol handlers, and all the other new integration points, and the UEM ensures that this information is transferred from session to session. Even if this requires a certain amount of effort to teach the UEM solution about all these far-flung locations, the effort would be worthwhile if the App-V client did not have a safety mechanism in place. (See the "Requirements of UEM" box.)

Requirements of UEM

A UEM solution is essential for most App-V 5 environments and should have the following features:

  • Configuration data saved locally to the machine migrate with the users.
  • Configuration data can be managed in protected areas (e.g., HKLM in the registry).
  • Configuration data can be transferred from an older package to a current package.
  • Ensure consistent application configurations independent of launching inside or outside a Connection Group.
  • Manage configuration data in the virtual environments of SCCM.
  • Improve the logon behavior in centralized desktop and server environments.
  • The UEM must be able to manage configuration data in the "internal" App-V environments. External solutions are usable for simple application landscapes but would be stretched quickly to their limits with newly packaged application updates, in Connection Groups, and in virtual environments in SCCM.
  • Management of objects that would not normally migrate with the users (e.g., LOCALAPPDATA or parts of the machine registry).
  • Define exceptions that do not migrate with the users (e.g., registry timestamp).
  • It should be possible to activate the UEM through a process so that publishing information can be managed.

Situations regularly arise in which a user (or computer) is deprived of access to a particular virtual application. The App-V client checks whether a matching virtual application for the integration points exists to prevent the storage of orphaned integration points on the system (for scenarios in which a user environment is not generated from scratch each time). The integration points are deleted if the appropriate package cannot be used, and this happens relatively early in the App-V client's launch process.

What's good for fat clients turns out to be counterproductive in virtual desktop infrastructure (VDI) or remote desktop services (RDS) sessions: Users log on to an empty session and the UEM generates the integration points at an early stage. The App-V client is now initialized, performs the consistency check, and deletes all integration points again because no App-V packages are known in this empty session. After that, the App-V client performs the scheduled tasks for the sync/publishing refresh, connects to the publishing server, loads the application list, and creates the integration points.

Fortunately, Microsoft has implemented a switch in Hotfix 4 (HF4) for App-V 5 Service Pack 2 (SP2): The switch can be used to disable counterproductive cleaning. If the registry value PreserveUserIntegrationsOnLogin is set to 1, the integration points generated by the UEM survive, even if the corresponding application is not known in the session. The publishing process that happens later would not only generate new integration points, it would also delete abandoned integration points. For users, this would mean that the same links that existed at the last logoff are visible shortly after logging on, and the superfluous icons disappear again, as required. Because Hotfix 4 implements further improvements, the publishing process should appear both significantly faster in empty sessions and complete from a technical point of view. This behavior was validated in a small test [4].

On the other hand, the UEM must become active in the logon process to create integration points. However, it must above all be able to identify the correct locations in which the App-V client creates these elements.

The shortcuts in the start menu and on the desktop are pretty simple – two folders from the perspective of UEM. What is significantly more complicated are the file type extensions, and you would probably have to give up identifying (almost) all of Explorer's shell extensions.

Fortunately, Microsoft not only has its own profile management solution (UE-V), but development of both products is also coordinated within the Microsoft Desktop Optimization Package (MDOP) family, meaning that Microsoft is searching internally for a solution.

As a result, there is now – as of SP2 HF4 – an executable file that handles the process of synchronizing with the publishing server. Of course, under the hood, the PowerShell Sync-AppvPublishingServer command is run again, but the calling process is no longer the frequently used PowerShell.exe, but rather the new SyncAppvPublishingServer.exe. It is a good thing that UE-V can be activated using precisely this kind of process launch (and even better that many other UEM solutions operate in a similar way).

UE-V and others therefore can easily archive all changes that have been initialized by the Sync-AppvPublishingServer process and then, of course, restore them. Precise analysis of the integration point targets is therefore no longer necessary. You will find the template for UE-V in the TechNet Gallery [5]; as an XML file, this can serve as inspiration for other UEM solutions.

Conclusions

You can dispense with the combination of App-V and profile management if App-V 5 is only used on fat clients in your environment and if these devices are only used by one user. Smart use of UEM is practically mandatory for scenarios in which users sometimes change machines, and you initially want to give them a clean environment, or if you use Configuration Manager's virtual environments.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy ADMIN Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our ADMIN Newsletters
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs



Support Our Work

ADMIN content is made possible with support from readers like you. Please consider contributing when you've found an article to be beneficial.

Learn More”>
	</a>

<hr>		    
			</div>
		    		</div>

		<div class=