I ran into an interesting problem with 4.6SP1 while sequencing the application 7-Zip today.
If you have been at all familiar with App-V sequencing at any time prior to the 4.6 SP1, you would know that while you are in the “installation mode” with the sequencer, you not only install the application but you fully configure and customize the application at that time.
One issue with this is that sometimes the start menu shortcuts do not work inside the sequencer (although they are captured and will work at the client). So to run those apps in installation mode, you would have to manually find the installed program and launch it by hand.
To eliminate this shortcut problem and make sequencing easier in 4.6 SP1, Microsoft created a secondary monitoring mode, so that we now have an “Install” monitoring mode and a separate “Configure Software” monitoring mode. The latter has a sequencer GUI description about managing “first use tasks”, “configuring license agreements”, “setting user preferences”, and “disabling automatic updates”. Microsoft has never defined exactly what the differences are in how change detected in these two modes are handled, implying that it makes no difference. Well, it turns out that sometimes it does!
One difference between these two modes that I have noticed, is that at the end of install mode, everything gets parsed and VFS’d, and any Run-Once commands are applied. Some of the effects of the mode difference that I have noticed are listed below:
- If the installer did not create a shortcut somewhere, there will be nothing for you to run in the customization mode. In this case, it is necessary to manually create the shortcut while in the installation mode.
- If the application GUI allows customization of File-Type-Associations (FTAs) separate from the installer, you must set all FTAs while in installation mode.
- If further installation is needed after the Run-Once are processed, you will need to create a dummy shortcut to either the cmd prompt or windows explorer while in installation mode so that you can get access to perform further install activity during configuration mode. You would then remove this shortcut in the application editor of the sequencer later on.
The second issue was found specifically in sequencing the application 7-Zip. This application installer creates no FTAs upon install. Instead, you must run the application and use the configuration option to select the file types you want associated. If you wait until the sequencer customization mode to make these changes, the software will think the associations have been made, and the registry changes for HKLM\Software\Classes are captured inside the virtual environment, however the external package publishing information will not include the FTAs.
I usually customize sequenced applications in install mode because I am just plain used to doing it then. Earlier today I was sequencing 7-Zip, and I happened to forget to do the FTA during the installation mode and tried it during configuration. Thus I finally noticed the impact. I think I will stay with installation mode customization (unless a virtual reboot is needed) in the future.
It would be really nice if Microsoft documented the differences. I am sure there are more than I noted above. In particular, I would expect there are differences in the file update settings (“Application” versus “User” mode) and possibly transparency (“Merge with Local” versus “Override Local”) and these need to be re-documented.
Hi Tim,
Could you please shed some lite on the topic that is not clear for me. If I publish App-V package on Citrix and the package contains User Profile settings, lets say INI files in \Documents and Serttings\… If I am getting it right various users are sharing application space, the buble of the application on that Cirtix server. If one user is saving changes to the INI file how is it going to effect the other users?
Thank you.
Sergie.
Such a file would be marked (by default) as a “user” file (as opposed to “application”), which means each user would see the sequenced ini file the first time they run, but if the user makes a configuration change resulting in the ini file being updated, the update would be saved in the user’s private pkg file. Thus is would not affect other users.