App-V 4.6 SP3 HF03 rapid upgrade process components and batch scripting example

~ Paul Westervelt | Support Escalation Engineer

HOWDuring the course of the App-V 4.6 product life cycle there have been a number of changes to the base components that require updating to get to the latest version. As such, one of the issues that we see frequently on the App-V support team is folks wanting to update their environment to the latest supported version of App-V 4.6 SP3 HF03 as quickly and efficiently as possible.

While we have provided a method to install/upgrade the App-V product by using the MSI installation, we have found that the correct C++ runtime modules can be difficult to locate. For example, here are the installation instructions:

How to Install the App-V Client by Using Setup.msi

We find in the above article that the x86 versions of the prerequisite C++ files are required for a successful installation. Please review the Notesfor this article as they reference the x86 requirements.

However, the issue is that the runtime modules referenced in the above article will notallow for a successful upgrade of App-V 4.6 SP3 HF03 and will result in an error similar to the following:

Error 25010. A prerequisite for installation is missing.
Installation cannot continue.

Reference: Installing the App-V 4.6 Desktop Client using SETUP.MSI fails with Error 25010

So with this in mind my post today primarily focuses on how to successfully upgrade your current version of App-V 4.x.

Be aware that you must first be at one of these minimum App-V 4.6 versions in order to apply App-V 4.6 SP3:

  • Microsoft Application Virtualization 4.6 RTM (4.6.0.1523)
  • Microsoft Application Virtualization 4.6 All Languages (4.6.0.20200)
  • Microsoft Application Virtualization 4.6 Service Pack 1 (4.6.1.20870)
  • Microsoft Application Virtualization 4.6 Service Pack 2 (4.6.2.24020)

For more information see App-V 4.6 SP3 System Requirements in Microsoft Application Virtualization 4.6 Service Pack 3

You will also need the following items:

1. MDOP/VLSC installation media (unless you are performing an upgrade the client should already be installed).

2. The C++ Runtime files that will allow you to process the App-V 4.6 SP3 and App-V 4.6 SP3 HF03 update using the MSIEXEC commands with a final reboot to finish the installation:

3. The App-V 4.6 SP3 update.

4. The App-V 4.6 SP3 HF03 update

To begin, create the following directory structure for the files:

  • \\Server\Share\46SP3Client - SMB base share location
  • \\Server\Share\46SP3Client\x86 32bit installer version of the App-V client installer
  • \\Server\Share\46SP3Client\x64 64bit installer version of the App-V client installer
  • \\Server\Share\46SP3Client\prereq\x86. You can rename the C++ files as below in the scripting example. This can also be accomplished by creating individual directories for each runtime module.
  • \\Server\Share\46SP3Client\HF03\

Once the files are in place you can use the following batch script example to perform the installation. By using the /norestart switch for the App-V 4.6 SP3 client base installation, you can apply the HF03 update and reboot afterward to complete the overall installation.

The batch script example is below Note that you must replace SERVER\Sharewith a SMB share that you have available.

start /wait \\SERVER\Share\46SP3Client\prereq\x86\vcredist_x86.exe /q
start /wait \\SERVER\Share\46SP3Client\prereq\x86\vcredist_x86_ATL.exe /q
start /wait \\SERVER\Share\46SP3Client\prereq\x86\vcredist_x86_MFC.exe /q
start /wait \\SERVER\Share\46SP3Client\prereq\x86\vcredist_x86_2008.exe /q
start /wait \\SERVER\Share\46SP3Client\prereq\x86\vcredist_x86_2008_MFC.exe /q
start /wait msiexec.exe /i \\SERVER\Share\46SP3Client\prereq\x86\msxml6_x86.msi /quiet
start /wait msiexec.exe /i \\SERVER\Share\46SP3Client\x64\setup.msi /norestart /q
start /wait msiexec.exe /update \\SERVER\Share\46SP3Client\HF03\x64\AppV4.6SP3-WD-KB2986414-x64.msp /quiet

If you are having to perform a new installation for a client build, there will not be any of the App-V 4.6 client settings available that we would have from an upgrade. Instead, you would install one of the minimum required client versions mentioned earlier in this document, then the settings can be added to the above script by following the instructionsto apply the settings to the line for the client installation:

msiexec.exe /i "setup.msi" SWICACHESIZE="10240" SWIPUBSVRDISPLAY="Production System" SWIPUBSVRTYPE="HTTP /secure" SWIPUBSVRHOST="PRODSYS" SWIPUBSVRPORT="443" SWIPUBSVRPATH="/AppVirt/appsntype.xml" SWIPUBSVRREFRESH="on" SWIGLOBALDATA="D:\AppVirt\Global" SWIUSERDATA="^% LOCALAPPDATA^%\Windows\Application Virtualization Client" SWIFSDRIVE="S" /q

Paul Westervelt | Support Escalation Engineer | Microsoft GBS Management and Security Division

Get the latest System Center news on Facebook and Twitter :

clip_image001 clip_image002

System Center All Up: https://blogs.technet.com/b/systemcenter/

Configuration Manager Support Team blog: https://blogs.technet.com/configurationmgr/ 
Data Protection Manager Team blog: https://blogs.technet.com/dpm/ 
Orchestrator Support Team blog: https://blogs.technet.com/b/orchestrator/ 
Operations Manager Team blog: https://blogs.technet.com/momteam/ 
Service Manager Team blog: https://blogs.technet.com/b/servicemanager 
Virtual Machine Manager Team blog: https://blogs.technet.com/scvmm

Microsoft Intune: https://blogs.technet.com/b/microsoftintune/
WSUS Support Team blog: https://blogs.technet.com/sus/
The RMS blog: https://blogs.technet.com/b/rms/
App-V Team blog: https://blogs.technet.com/appv/
MED-V Team blog: https://blogs.technet.com/medv/
Server App-V Team blog: https://blogs.technet.com/b/serverappv
The Surface Team blog: https://blogs.technet.com/b/surface/
The Application Proxy blog: https://blogs.technet.com/b/applicationproxyblog/

The Forefront Endpoint Protection blog : https://blogs.technet.com/b/clientsecurity/
The Forefront Identity Manager blog : https://blogs.msdn.com/b/ms-identity-support/
The Forefront TMG blog: https://blogs.technet.com/b/isablog/
The Forefront UAG blog: https://blogs.technet.com/b/edgeaccessblog/