Recently I had to package several versions of Visual C++ for a client including the 2012 version. Previous versions of Visual C++ have proven to be pretty straight forward, but 2012 is a little different:

1. Download the installer from Microsoft here.

2. Install the executable on a PC/VM.

3. Navigate to C:\Program Data\Package Cache\.

– There might be several sub folders in this location. Go through them until you find one that has a vcRuntimeMinimum_x86 folder, there will be a separate one with a vcRuntimeAdditional_x86.

– Obviously if you are installing the 64-bit version the folder names with say x64 instead of x86

4. Copy the MSI’s and CAB files in each folder and move them to a folder to stage your package.

5. Create an MST with whatever standards you want and add the public property of ADDEPLOY=1 so that you don’t get this message:

“To install this product, please run Setup.exe. For other installation options, see the Installation section of ReadMe.htm”

6. Install vc_runtimeMinimum_x86.msi first, then install vcRuntimeAdditional_x86.msi second. Include your transforms :

– Example  – “msiexec.exe /i vc_runtimeMinimum.msi TRANSFORMS=MST.mst /qn”

*alternative* – You could also create a chained MSI package for the two so that you don’t have to run two separate installs. Please read here on how to created a non-streamed chained MSI package.