Installing Visual Studio 2010 RTM and Service Pack 1 together

Installing Visual Studio 2010 RTM and Service Pack 1 together

Rate This
  • Comments 16

Now that Visual Studio 2010 SP1 has been released, administrators and developers may wish to install both RTM and SP1 together for a seamless experience. With the release of VS2010 RTM we already published the Visual Studio Administrator Guide that documents a lot of the instructions I’ll utilize below. I encourage you to review that before proceeding with the following instructions, particularly how to avoid restarts during setup by pre-installing certain packages like Windows Installer 4.5 and .NET Framework 4.0.

How to: Create and run an unattended Visual Studio with SP1 setup

You’ll create a distribution point that will contain both Visual Studio 2010 RTM and SP1. This will work for existing installations of VS 2010 since setup will simply repair the product if it’s already installed. This has the added benefit that if any files are missing from the target machine, they should be reinstalled without a prompt for source during the SP1 install.

Creating a network or local image

First you’ll be creating copies of the Visual Studio 2010 RTM and SP1 installations that you can share out or install locally.

  1. Create a network or local image of Visual Studio setup as documented in How to: Create and Run an Unattended Visual Studio Setup.
    • You do not need to pre-populate the product key, but the developer will be prompted for it when first starting Visual Studio. Pre-populating the product key is recommended for administrators deploying to multiple machines through volume licensing.
    • You do not need to create an unattend.ini file if you want to install all features. Running setup.exe /q /norestart will install all features.
    • If you do want to create an unattend.ini file, run setup\setup.exe /createunattend <drive>:\VS2010\unattend.ini and not setup.exe in the root. You should run this on the same operating system platform and architecture that you want to target.
    • Creating the network or local image for Visual Studio 2010 documentation is also optional. SP1 will upgrade the Help Viewer regardless.
  2. Create a subdirectory under <drive>:\VS2010 or wherever you created the image from step 1 named “SP1”.
  3. Download Visual Studio 2010 Service Pack 1 and save to %TEMP% or any other location you like except in the directory you just created in step 2.
  4. Open a command prompt (you can open it elevated now, or confirm the elevation prompt when requested later) and change directories to where you saved the SP1 web installer in step 3.
  5. Run VS10sp1-KB983509.exe /createlayout <drive>:\VS2010\SP1 to download all packages to the directory you created in step 2.

Creating the unattend.bat file

Next you’ll be creating a batch install that will first install Visual Studio 2010 RTM followed by SP1. You can use any batch or scripting language you like so long as it is already supported on target machines. The example below uses the Windows batch language to make use of tokens like %~dp0 which provides the parent path to the batch script. This is handy in case you change the network or local image location in the future.

  1. Create a batch file named unattend.bat in the directory you created in step 1 and open it in notepad.exe or your favorite vanilla text editor.
  2. (Recommended) Add a simple check to determine if the batch script is processed in an elevated process. See the attached batch script for an example.
  3. Add the path to setup.exe in VS2010 with the following options.
    • Full install with no unattend.ini file: "%~dp0setup\setup.exe" /q /norestart
    • Custom install with unattend.ini file: "%~dp0setup\setup.exe" /q /norestart /unattendfile "%~dp0unattend.ini"
  4. (Optional) If you want to install Visual Studio 2010 documentation locally as documented in the Administrator Guide, add the command to HelpLibManager.exe next, ex: "%ProgramFiles%\Microsoft Help Viewer\v1.0\HelpLibManager.exe" /silent /product VS /version 100 /locale en-US /content "%ProgramData%\Microsoft\HelpLibrary" /sourceMedia "%~dp0ProductDocumentation\HelpContentSetup.msha"
  5. Add the path to setup.exe in VS2010\SP1 with the following option.
    • Restart after install (recommended): "%~dp0SP1\setup.exe" /q
    • Do not restart after install (Visual Studio or .NET Framework may not work until you do, but subsequent installs may work before rebooting): "%~dp0SP1\setup.exe" /q /norestart

You might consider adding some error processing for reboot return codes after each command. See the attached batch script for an example.

Running unattended setup

If you plan on deploying Visual Studio 2010 with SP1 over the network, you can share out the location you created above, ex: <drive>:\VS2010. As noted in the Administrator Guide, spaces in the share path may cause setup to fail so its best you avoid using spaces.

Since the batch file already passes the right options to the installers, the deployment scripts or developers can execute unattend.bat in an elevated command prompt directly.

How to: Deploy Visual Studio with SP1 using Microsoft System Configuration Manager (SCCM)

You’ll use the distribution point you created above to create or modify a package for SCCM to install Visual Studio 2010 RTM and SP1. You’ll follow the process documented in How to: Deploy Visual Studio Using Microsoft System Configuration Manager (SCCM) and add a program to the package after Visual Studio.

  1. Create the network image as documented above in the section “Creating a network or local image”.
  2. Follow the instructions in How to: Deploy Visual Studio Using Microsoft System Configuration Manager (SCCM) up till and including “Create a Program That has Setup and Installation Parameters for Visual Studio”.
  3. Create a program for the Visual Studio 2010 SP1 package.
    1. Right-click on Programs, point to New, and then click Program.
    2. On the General page, type a name for the package in the Name box, which in this example is “Visual Studio 2010 SP1 silent installation” (without quotes).
    3. In the Command line box, type: SP1\setup.exe /q /norestart
    4. In the Run list, select Hidden.
    5. In the After running list, verify that No action required is selected. Click Next, and then on the Requirements page click Next again.
    6. On the Environment page, in the Program can run list, select whether a user must be logged on. This will enable Run with administrative rights for the Run mode. Leave Drive mode set to Runs with UNC name, and then click Next.
    7. On the Advanced page, select Suppress program notifications. Also select Run another program first and then select the “Visual Studio 2010 Package” and the “Visual Studio 2010 silent installation” Program. Click Next.
    8. On the Windows Installer page, click Next.
    9. Click Next and then on the MOM Maintenance Mode page click Next again.
    10. To view the Summary page, click Next.
    11. To finish creating the new program, click Next, and then on the Wizard Completed page click Close.
  4. Continue the instructions in How to: Deploy Visual Studio Using Microsoft System Configuration Manager (SCCM) with “Select a Distribution Point”.

The documentation cited above from the Administrators Guide has a number of help links to more information about Active Directory and SCCM.

Attachment: unattend.zip
Leave a Comment
  • Please add 1 and 4 and type the answer here:
  • Post
  • I think you missed a line:  :-)

    msiexec /i Wix35.msi /qn

  • What can be integrated into the VS2010 SP1 install disc? Unattended installation but also with one or two hours

  • @Inchroy, I'm not sure what you mean. You can add anything in the unattend.bat file (or whatever you wish to call it).

  • hi

    this is a web installer "VS10sp1-KB983509.exe"

    i downloaded Just Sp1 (VS2010SP1dvd1.iso).how to deploy or integrate Visual Studio 2010 with sp1?

  • @hessam, just copy the content of the DVD to the folder like you would've created using the web bootstrapper in step 5 of "Creating a network or local image" (ex: <drive>:\VS2010\SP1).

  • Is there a way to download the english components only with the web bootstrapper?

    If not, I have the .iso downloaded already, can I delete the non -ENU files from the extracted folders?

  • @b, you can try deleting the non-ENU packages from the ISO copied over to disk, but this is not supported. It should work on machines with only ENU products installed, but please proceed at your own risk.

  • Hi, i wanto to know how to integrated  the vs2010 setup iso and vs2010 sp1 together?

    vs2010setup.iso + vs2010sp1.iso = vs2010withSp1Setup.iso

  • @Hanxin, after following the instructions above you can burn the folder containing all the files to a DVD. Windows XP and newer have built-in burning support, and there many other burners available on the market. Be sure to validate the image after (typically an option presented to you right before starting the burn - it's worth the extra time it takes so you don't potentially waste more time later with a bad install due to a bad burn).

  • Note if you are creating a network image and you create the unattend.ini file to go into the unattend.ini file and replace the "<drive>:\VS2010\" with ".\" wherever you find it.  That path will be hardcoded into the unattend.ini file.  I tested it and it worked. Assume that these files will move locations on the network.

  • hello.

    from what i have read here, this is NOT slipstream or integrating SP1 into vs2010. This is just:

    1) install vs2010

    2) apply sp1 (by running SP1\setup.exe)

    is there a way to real slipstream sp1 into vs2010?

    Or it's like office 2007 which automatically applies all patches .msp after installation of office 2007?

    tnx.

  • @milo, slipstream is not supported for Dev10 SP1.

  • Please enable slipstream in VS11 again!!!!

  • please enable slipstream in VS11 or release an integrated version with sp1.

  • This works perfect for me with the exception of the help documentation.

    Can someone post examples of how the commands are used to install the documentation?  I think I may have a syntax error somewhere.

    Thanks,

    Geoff

Page 1 of 2 (16 items) 12