Selecting .NET Framework 3.0 as prerequisite breaks Publish. Bug?

I have the following installed in my XP/SP2:

  • .NET Framework 3.0 RC1
  • .NET Framework 3.0 SDK RC1
  • VS Extensions Orcas CTP

I created a Windows Application and published it successfully.

However, after I selected .NET Framework 3.0 in the Prerequisite dialog (it's not selected by default) I can't publish it anymore due to the following errors:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(3295,9): error MSB3141: No 'PublicKey' or 'Hash' attribute specified for file 'NETFX30\Dotnetfx3.exe' in item '.NET Framework 3.0'.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets : warning MSB3164: No 'HomeSite' attribute has been provided for '.NET Framework 3.0', so the package will be published to the same location as the bootstrapper.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(3295,9): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'NETFX30\Dotnetfx3.exe' in item '.NET Framework 3.0' can not be located on disk. See Help for more information.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(3295,9): error MSB3141: No 'PublicKey' or 'Hash' attribute specified for file 'NETFX30\Dotnetfx3_x64.exe' in item '.NET Framework 3.0'.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets : warning MSB3164: No 'HomeSite' attribute has been provided for '.NET Framework 3.0', so the package will be published to the same location as the bootstrapper.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(3295,9): error MSB3152: The install location for prerequisites has not been set to 'component vendor's web site' and the file 'NETFX30\Dotnetfx3_x64.exe' in item '.NET Framework 3.0' can not be located on disk. See Help for more information.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets : warning MSB3164: No 'HomeSite' attribute has been provided for '.NET Framework 3.0', so the package will be published to the same location as the bootstrapper.

One of the errors says "The install location for prerequisites has not been set to component vendor's web site". However it doesn't make sense because I did specify the install location for prerequisites to be "Download prerequisites from the component vendor's website".

Is there anything I must manually do in order to select .NET Framework 3.0 in the prerequisite dialog ?

[2855 byte] By [Makutaku] at [2008-1-4]
# 1
I'm getteing the exact same errors. Did you get it resolved?
MansoorMohsin at 2007-10-3 > top of Msdn Tech,Visual Studio Orcas,Windows Presentation Foundation (WPF)...
# 2

The error means that the DotNet 3.0 packages is missing on your dev machine. The readme explains how to set up your machine to publish correctly:

If you want to use the Publish feature for .NET Framework 3.0 projects, you must copy the .NET Framework 3.0 redistributable packages for both x86 (Dotnetfx3.exe) and x64 (Dotnetfx3_x64.exe) to the Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\DotNetFX directory, and then specify .NET Framework 3.0 as an additional prerequisite from the Publish tab in the project properties and specify that a setup program should be created to install the prerequisite components. Note that until a final release of the .NET Framework 3.0 runtime is available, publishing can only be used for internal testing.

DennisCheng.MSFT at 2007-10-3 > top of Msdn Tech,Visual Studio Orcas,Windows Presentation Foundation (WPF)...
# 3

Thanks Dennis. Your information was enough to help me solve the problem. However, it wasn't accurate. The correct directory is:

\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\NETFX30

It now works and now I can test publishing internally.

The only thing that I was disapointed to discover is that if I click a link to the "myapp.application" in a machine that doesn't have the prerequisites, it's not smart enough to install the prerequisites and just fails. So, for machines missing the prerequisites I am forced to ask users to download setup.exe, which breaks what could be a totally transparent and smooth installation. It's probably "by design" but it's sad anyway.

And since we're talking about this subject ... do you know why .NET 3.0 installation takes soooo looooog ?

Makutaku at 2007-10-3 > top of Msdn Tech,Visual Studio Orcas,Windows Presentation Foundation (WPF)...
# 4

Makutaku wrote:
The only thing that I was disapointed to discover is that if I click a link to the "myapp.application" in a machine that doesn't have the prerequisites, it's not smart enough to install the prerequisites and just fails.

We realize this and are working to remedy it in a future version of ClickOnce.

Makutaku wrote:
And since we're talking about this subject ... do you know why .NET 3.0 installation takes soooo looooog ?

Broadly speaking the setup involves copying files to disk, installing to GAC, installing services and generating native images. The generation of native images by far takes the bulk of the time. The downside of not NGENing is that you experience just in time compilation when the app runs, impacting startup time and performance. Again, we're looking at ways to make this better.

Thanks for the feedback.

AshishShetty-MSFT at 2007-10-3 > top of Msdn Tech,Visual Studio Orcas,Windows Presentation Foundation (WPF)...
# 5

This does not work. See below

Error 1 Cannot publish because a project failed to build. 1 1 HelloFromClickOnce
Error 2 No 'PublicKey' or 'Hash' attribute specified for file 'NETFX30\wfxproxy.exe' in item '.NET Framework 3.0'. HelloFromClickOnce
Warning 3 No 'HomeSite' attribute has been provided for '.NET Framework 3.0', so the package will be published to the same location as the bootstrapper. HelloFromClickOnce

Error 4 The install location for prerequisites has not been set to 'component vendor's web site' and the file 'NETFX30\wfxproxy.exe' in item '.NET Framework 3.0' can not be located on disk. See Help for more information. HelloFromClickOnce


ScubaKing007 at 2007-10-3 > top of Msdn Tech,Visual Studio Orcas,Windows Presentation Foundation (WPF)...
# 6

How do I get these packages to an application deployment server ?

When I try to use the Visual Studio wizard to deploy an appliation to an FTP server, it goes ok with just my application assemblies.

But it keeps on failing on trying to deploy the dotnetfx3.exe (50 MB) and dotnetfx3_x64.exe (90 MB) to the FTP server.

These files are huge and Visual Studio is not able to handle FTP transfers of these files properly. I've waited hours, with no progress.

I can use a proper FTP application to get them on the deployment server. But the next question is, how do I instruct Visual Studio wizard not to redeploy these prerequisites to the server. When I try to set 'Download component's from vendors website'. My application is deployed, but the prerequisites are not resolved.

Wasting hours on this to get the .NET 3.0 framework deployed. Just the 2.0 Framework ( 23 MB ) was not too bad)

Sentient at 2007-10-3 > top of Msdn Tech,Visual Studio Orcas,Windows Presentation Foundation (WPF)...
# 7
I have the same problem trying to package my website installer (not using click once.) I get the no homesite error, which kind of defeats the whole purpose of having the prerequisites if you have to have the dotnet setup files in some random directory in the location you're installing from. Might as well just install it manually at that point.
AdeptiveAdam at 2007-10-3 > top of Msdn Tech,Visual Studio Orcas,Windows Presentation Foundation (WPF)...

Visual Studio Orcas

Site Classified