Yesterday we stumbled on a nifty little problem: how to select .NET 3.0 as a prerequisite for a ClickOnce deployment. When we went to publish our app, which uses WCF and thus requires version 3 of the .NET Framework, we found that .NET 3.0 was not a selectable option in the prerequisites dialog. We could only find a checkbox for .NET 2.0.
After some research, we found various blog posts that said you need to copy the .NET redistributables to a subdirectory under your Visual Studio location. Unfortunately, just copying the files is not enough.
What you really need to do is download vsextwfx.msi, the Visual Studio 2005 extensions for .NET Framework 3.0 (WCF & WPF), November 2006 CTP. These extensions will enable the .NET 3.0 Framework as a selectable option in the prerequisites dialog in a ClickOnce deployment.
One other caveat: If you’re like us, you probably want to put the .NET Framework redistributable files on a local fileserver, instead of choosing the “Download prerequisites from the component vendor’s web site” option (at least if you’re application is like ours and only needs to be installed on a local intranet, not available to the world at large).
Installing .NET 3.0 over a network is a bit faster than the web. However, after you’ve pointed the prerequisites dialog to some file share on your network, like “\\ourserver\DotNetFramework”, you’ll notice upon attempting to install your application via ClickOnce that it complains it cannot find the .NET 3.0 Framework files, and it is looking in “\\ourserver\DotNetFramework\NETFX30″. For whatever reason, the NETFX30 gets appended to the location you provide in the dialog. So when you create your directory, make sure you also create a subdirectory for NETFX30 and that is where your redistributables should for .NET 3.0 should go.
Happy deployment!
Melanie says:
thanks
July 24, 2008, 8:20 amSlots says:
Thank for the info, but there is better version of Visual Studio extensions for .NET.
July 24, 2008, 8:23 amThanks anyway.