Slipstream Visual Studio 2008 Service Pack 1

Step by Step guide for how to slipstream Visual Studio 2008 Service Pack 1.

During the rebuild of my development environment I wanted to use the same trick I used before to reduce the size of my chained differenced VHD files.  (For info on my setup check out Andrew Connell'sHOWTO: Use Virtual PC's Differencing Disks to your Advantage post.)  I haven't had time to dive into this so I did a quick search to see if there would be any issues, unfortunately there is.

According to Heath Stewart slipstreaming Visual Studio 2008 sp1 is not supported except for Active Directory deployments.  Heath's recommendation is to perform an chained unattended install of VS 2k8 and SP1. If you're interested in this approach here is info on how to do this with VS 2k5, steps for VS 2k8 should be very similar.  This would allow you to silently install both Visual Studio and sp1 on a machine.  To address the disk space requirements for installing sp1 Heath recommends you disable the patch baseline cache using the MaxPatchCacheSize policy.  No doubt this option will work but it isn't exactly what I wanted.  Also keep in mind there could be issues using this approach, if you need to repair or uninstall a patch you will be prompted for the source files, which you won't have. Since the forum post implied that an AD deployment of a slipstreamed install is supported I assumed this would still be possible so I wanted to give it a go.

As a starting point I looked back at Richard Rudek's post on slipstreaming Visual Studio 2005 SP1.  As I expected the steps are just about the same but I ran into a little bit of a snag.  Creating the Administrative installation of VS was no problem.  When I applied the service pack to the admin install I received the following error.

A quick Google search led me to the Bug.  Unfortunately the status for the bug is Closed (Won't Fix).  I searched the install folder for the WcfTestClient.chm file and found it in a different folder than where the service pack installer expected it to be, instead the file was in the Program Files\Microsoft Visual Studio 9.0\Common7\1033 folder.  To get around the error I simply copied the WcfTestClient.chm file from the Program Files\Microsoft Visual Studio 9.0\Common7\1033 folder to the Program Files\Microsoft Visual Studio 9.0\Common7\IDE folder and reran the service pack installer.  This time it ran with no errors!  Next finished out the steps in Richard's post (Step 4).  There were much more than 7 files prompted for overwriting, I didn't count the files but just hit N each time I was prompted.  Once the files finished copying I installed the slipstreamed Visual Studio installation on a fresh vm and it installed with no errors.  I checked the SP level of Visual Studio and it showed to be sp1.

Here ere are the commands I ran for each step:

Step 1
msiexec.exe /a E:\vs_setup.msi TARGETDIR=F:\VS2k8 /L*vx F:\VS2k8\vsinstall.log

(Note: Copy WcfTestClient.chm file before running step 2)

Step 2
VS90sp1-KB945140-ENU.exe /extract F:\VS2k8SP1\Extracted

Step 3
msiexec.exe /a F:\VS2k8\vs_setup.msi /p F:\VS2k8SP1\Extracted\VS90sp1-KB945140-X86-ENU.msp /L*vx F:\VS2k8\patch.log

Step 4
xcopy E: /h /i /r /s /exclude:exclude.txt

Once completed the slipstreamed installation folder is 4,490,358,390 bytes and contains 14,966 files with 1,543 folders.  

Hope this helps.

Cheers,
Kyle

Comments (closed)

re: Slipstream Visual Studio 2008 Service Pack 1

Wednesday, April 08, 2009 9:12 AM by Jiucenglou

Great article!

Could you please tell how to reorganize the files into *.cab formats after the slipstreaming?

re: Slipstream Visual Studio 2008 Service Pack 1

Thursday, April 09, 2009 7:43 AM by Cassius

Clear manual.

But I cannot make step 3 because VS90sp1-KB945140-X86-ENU.msp doesn't exist in my extraction.
The VS90sp1-KB945140-ENU.exe is only 536 kB and when I normally execute it it start downloading (the rest??) from the microsoft site. I also tried to download the iso file but that gives a total different file tree to use for slip streaming.

re: Slipstream Visual Studio 2008 Service Pack 1

Saturday, April 11, 2009 6:52 PM by morfil

@Step 4, as I could understand, it copies all files from the original VS2008 disk to the folder that we slipstreaming. (F:\VS2k8 in this case??). It skips files named in exclude.txt. However where could I find that file? Or shuld I generate tat file with that command:
dir /s /b > exclude.txt

re: Slipstream Visual Studio 2008 Service Pack 1

Sunday, April 12, 2009 7:55 PM by softwerx

I'm in the final process of creating the slipstreamed install media. I, like Cassius, had downloaded the ISO and gotten a different file tree and the same issue as he. After looking at the folder structure, where I extracted the ISO contents to, I noticed that the actual files were in a folder named vs90sp1. I added that directory to the path (where appropriate) in step 3 and everything has - so far - gone off without a hitch. Excellent work Kyle.

re: Slipstream Visual Studio 2008 Service Pack 1

Thursday, April 16, 2009 10:45 PM by wyattwong

Do you mean the step 3 should be revised as follows ?

msiexec.exe /a F:\VS2k8\vs90sp1\vs_setup.msi /p F:\VS2k8SP1\vs90sp1\Extracted\VS90sp1-KB945140-X86-ENU.msp /L*vx F:\VS2k8\patch.log

re: Slipstream Visual Studio 2008 Service Pack 1

Thursday, May 21, 2009 4:01 AM by THW

If Slipstreaming THIS way, some of the new features added with the SP1 won't work properly (eg. creating a new MFC app with a ribbon)

re: Slipstream Visual Studio 2008 Service Pack 1

Thursday, May 21, 2009 6:11 AM by THW

You also should patch in the "VC90sp1-KB947888-x86-enu.msi" in step 3!!!

re: Slipstream Visual Studio 2008 Service Pack 1

Saturday, May 23, 2009 7:17 AM by knopper

and is THEN the SP1, full integrated also with MFC App and ribbon? Or are there still other patches (msp-files), wich i have to apply?

re: Slipstream Visual Studio 2008 Service Pack 1

Sunday, May 24, 2009 4:16 AM by sorin

I really appreciate your effort for doing the SP1 sliptream. I tried it myself and I spent many hours debugging strange behaviors.

For example a huge number of things from feature pack are missing (including parst of the ribbon interface). If you do not trust me just run a directory compare.

The *only* working way for making it fully work is:
* install VS 2008 RTM
* install VS Feature Pack - even Microsoft declared that they includes Feature Pack in SP1, this is not quite true and if you install SP1 before you'll not be able to install Feature Pack
* install VS SP1 (you can download the ISO)

Also some other hints:
* if you have VS 2005 on the same computer and you decide to remove it, do not forget to remove 2008 and reinstall it again using the above steps - otherwise you'll loose time.

Sad, but I don't think we'll be able to have a fully working slipstream VS2008. Maybe this is the reason why Microsoft decided not to release the full image: it would be too hard even for them.

re: Slipstream Visual Studio 2008 Service Pack 1

Thursday, April 15, 2010 11:22 AM by Chris

I followed this pretty much step by step and worked absolutly perfectly.

nicely done.

re: Slipstream Visual Studio 2008 Service Pack 1

Tuesday, April 27, 2010 3:53 PM by ilija

you forgot another step between 3 and 4.
after step 3 you'd need to apply the VC90sp1-KB947888-x86-enu.msp patch
so step 4 wold be:
msiexec.exe /a F:\VS2k8\vs_setup.msi /p F:\VS2k8SP1\Extracted\VC90sp1-KB947888-x86-enu.msp /L*vx F:\VS2k8\patch2.log

This wold fix the missing libraries bug (no ribbon) etc.
but there are a few more msp patches in the sp1 executable that would need to be applied manually (The SDK patches, the office tools etc.)
But with 2010 out oit patching 2008 an issue?