Tuesday, 19 August 2008

Frustrating .NET Framework SP1 Bootstrapper Issue

If you'll try to bootstrap your project with .NET Framework 3.5 SP1 you'll get the following error:

error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'DotNetFX35SP1\dotNetFX20 aspnet.msp ' in item '.NET Framework 3.5 SP1' can not be located on disk. See Help for more information.


This because MS guys forgot to make correct bootstrapper package. Solution is posted here

And the solution itself:

Update the Package Data

1. Open the [Program Files]\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1 folder or %ProgramFiles(x86)%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1 on x64 operating systems
2. Edit the Product.xml file in Notepad.
3. Paste the following into the < PackageFiles > element:
< PackageFile Name="TOOLS\clwireg.exe" />
< PackageFile Name="TOOLS\clwireg_x64.exe" />
< PackageFile Name="TOOLS\clwireg_ia64.exe" />


Download and Extract the Core Installation Files

1. Navigate to the following URL: http://go.microsoft.com/fwlink?LinkID=118080
2. Download the dotNetFx35.exe file to your local disk.
3. Open a Command Prompt window and change to the directory to which you downloaded dotNetFx35.exe.
4. At the command prompt, type:
dotNetFx35.exe /x:.
This will extract the Framework files to a folder named “WCU” in the current directory.
5. Copy the contents of the WCU\dotNetFramework folder and paste them in the %Program Files%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1 folder (%ProgramFiles(x86)%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1 on x64 operating systems). Note: Do not copy the WCU\dotNetFramework folder itself. There should be 5 folders under the WCU folder, and each of these should now appear in the DotNetFx35SP1 folder. The folder structure should resemble the following:
o DotNetFx35SP1 (folder)
* dotNetFX20 (folder
* dotNetFX30 (folder)
* dotNetFX35 (folder)
* dotNetMSP (folder)
* TOOLS folder)
* en (or some other localized folder)
* dotNetFx35setup.exe (file)

You may now delete the files and folders you downloaded and extracted in steps 2 and 4.

9 comments:

Lars O said...

hear hear. Thanks for the solution. Maybe MS should define ClickOnce-issues under Recurring General Issues.

Rob Burke said...

Unbelievably frustrating. Thank you for blogging this.

Rick said...

Glad to be of service :)

Lucas said...

It seems you're missing a step where you need to find PackageFile Name="dotNetFX30\XPSEPSC-x86-en-US.exe in product.xml and replace the PublicKey.

Peter said...

Such a small thing but how irritating... Anyway, thank you for this solution. It has really helped me!

Abdul Gafoor said...

Spot on solution.. Helped me

Sudhir DBAKings said...

Nice post very helpful
DBAKings

Osama Rabea said...

Can`t find that WCU folder anywhere?!!!!! any help?

Nicolás Aros said...

For those of us who have to install SP1 with language packs, you have to download those too and add them to the language folder (in my case spanish = es\DotNetFX35\x86 and es\DotNetFX35\x64)

You can download and check the paths on the following link (item 3.2.1.1)

http://download.microsoft.com/download/A/2/8/A2807F78-C861-4B66-9B31-9205C3F22252/VS2008SP1Readme.htm