The Microsoft User Experience Virtualization (UE-V) Generator in template creation mode monitors executables for registry and file changes.  While there is no built-in support in the UE-V Generator for ClickOnce applications, it is possible to monitor the target executable for use in UE-V.  Unlike traditional applications that use a .LNK file to reference a shortcut to their target executable, ClickOnce applications use a ClickOnce Application Reference file with a .appref-ms file extension.  The .appref-ms file in turn references a ClickOnce Application Deployment Manifest with a .application file extension.  The deployment manifest includes a reference to the target executable.

To create an application template for UE-V, use one of the two methods below.

Method 1: Use Task Manager to Identify the Application

  1. Right-click the Windows Task Bar and choose Start Task Manager (TaskMgr.exe)
  2. Windows 7:  Right-click the ClickOnce application on the Applications tab and choose Go To Process.  The running executable will be highlighted on the Processes tab.  Right-click on the executable and choose Open file location

    Windows 8:  Right-click on the ClickOnce application in the Processes Tab and choose Open file location

  3. Make note of executable name and copy the path to the clipboard.
  4. Open the UE-V Generator and select Create a settings location template.  Click Browse... and paste the file path from step 4 and browse to navigate to the application's folder.  Select the application, click Open and complete the Generator wizard.

Method 2: Extract the Process Name from the Application Manifest

In rare cases where you cannot directly run the target application (for example, if backend resources are not available or the UE-V administrator does not have sufficient rights to launch the application), it is possible to determine the target executable in order to manually create a template.

  1. Open the shortcut's  .appref-ms file in Notepad.  Make note of the file reference.
  2. Navigate to the .application file referenced in step 1 and open that file in Notepad.
  3. Locate any assemblyIdentity tags in the .application file.  This will be in an entry similar to this:

    <assemblyIdentity name="clickoncedemoapp.exe" version="1.0.0.2" publicKeyToken="66e29aca52406557" language="neutral" processorArchitecture="msil" type="win32" />

  4. Make note of the application name and use this value for the template's Filename tag.

      

 Note:  Some applications will launch one or more executables that call child processes.  It may be necessary for your template to monitor all of these processes.  For example, in the figure below, rootapp.exe calls app1.exe, then app2.exe.  The easiest way to monitor these events is to load Process Monitor and create a filter for Operation = Process Start (and optionally Process Exit if you want to see which executables call other apps then exit).