Mailbag: How can I create an administrative install point for Visual Studio 2005?

Question

You previously posted instructions for how to create an administrative install point (AIP) and deploy the .NET Framework 2.0 using Group Policy. How can I create an administrative install point for Visual Studio 2005?

Answer

The following steps will allow you to create an administrative install point for Visual Studio 2005:

  1. Launch Visual Studio 2005 in administrator transform creation mode by running <Visual Studio source location>\setup\setup.exe /CreateTransform <path to transform file to create> . Note that the /CreateTransform parameter only works when passed to the setup.exe in the setup subdirectory, not the setup.exe on the root of the Visual Studio source location.
  2. Enter the product key, select the features that you want to install and the destination location and click the button to create the transform needed for the administrative install point.
  3. Run msiexec /a <path to vs_setup.msi> /L*v <path to log file> TRANSFORMS =<path to transform created in steps 1 and 2 above> TARGETDIR=<path to create the adminstrative install point at>

Once you have created an administrative install point, you can create a Group Policy object to deploy Visual Studio 2005 using machine assignment (Visual Studio does not support per-user deployment scenarios).

Alternatively, you can directly install Visual Studio 2005 from the MSI in your administrative install point by using a command line such as the following:

  • msiexec /i <path to vs_setup.msi in your administrative install point> /L*v <path to log file> TRANSFORMS =<path to transform created in steps 1 and 2 above>

These instructions are also documented in sections 3.3 and 3.4 of the Visual Studio 2005 administrator mode readme.

<update date="3/11/2006"> Updated command line to create administrative install point to be simpler. There is no need to pass the PIDKEY parameter because the product key information is contained in the transform passed in via the TRANSFORMS parameter </update>