user1018711
user1018711

Reputation:

Clickonce - Deploy on DVD, with offline installer

i am using VS 2010 and i am having trouble with clickonce deployment.

My goal is to Distribute application on DVD for users without internet connection to be able to install it. So it needs to include full installer of .NET framework 3.5 Client profile.

However, i am unable to achieve this.

From VS 2010 i choose publish wizard:

  1. Specify location to publish this applicaton: C:\ something\ something - this folder i will burn later to CD

  2. How will users install application? From CD{DVD

  3. the application will check for updates from following location: http://13874.w74.wedos.net/

And that is it, Publish wizard ends here. So i create some aditional options: Options->deployment -Enable autorun for CDs -Disable creation of publish.htm page

If i publish app, it is deployed to specified folder on my disk and can be installed from there.

But how do i include offline version of .net framework installer (I am Targeting .NET Framework 3.5)?

Thank you.

Upvotes: 6

Views: 1437

Answers (1)

user1018711
user1018711

Reputation:

I managed to found solution for part of my question - how to include offline installer for .NET Framework 3.5. However, second part of my question - how to manage updates remains unanswered.

How to include .NET Framework offline installer for 3.5:

  1. Under prerequisites (Properties->Publish->Prerequisites) make sure you have .Net framework 3.5 SP1 checked

  2. Check radiobutton "Download from same location as my application" in lower part of prerequisities dialog.

  3. Download .NET 3.5 full redistributable here http://go.microsoft.com/fwlink?LinkID=118080

Here comes the main part. It is not enough to just have .net redistributable on same location as your app, there is slightly more to do.

  1. Unpack contents of installer from command line (command - "dotNetFx35.exe /x")
  2. Choose directory to unpack via dialog shown.
  3. Copy CONTENTS of subdirectory WCU\dotNetFramework to a)x86 systems: %Program Files%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1 b)x64 systems: %ProgramFiles(x86)%\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\DotNetFx35SP1

  4. In the same locations there should be xml file prduct.xml, edit it as folows: A) Paste the following into the < PackageFiles > element:

B) Find the element for < PackageFile Name="dotNetFX30\XPSEPSC-x86-en-US.exe" and change the PublicKey value to: 3082010A0282010100A2DB0A8DCFC2C1499BCDAA3A34AD23596BDB6CBE2122B794C8EAAEBFC6D526C232118BBCDA5D2CFB36561E152BAE8F0DDD14A36E284C7F163F41AC8D40B146880DD98194AD9706D05744765CEAF1FC0EE27F74A333CB74E5EFE361A17E03B745FFD53E12D5B0CA5E0DD07BF2B7130DFC606A2885758CB7ADBC85E817B490BEF516B6625DED11DF3AEE215B8BAF8073C345E3958977609BE7AD77C1378D33142F13DB62C9AE1AA94F9867ADD420393071E08D6746E2C61CF40D5074412FE805246A216B49B092C4B239C742A56D5C184AAB8FD78E833E780A47D8A4B28423C3E2F27B66B14A74BD26414B9C6114604E30C882F3D00B707CEE554D77D2085576810203010001

C) Find the element for < PackageFile Name="dotNetFX30\XPSEPSC-amd64-en-US.exe" and change the PublicKey value to the same as in step above Save the product.xml file

Thats it. Before that, when you attemp to publish it from visual studio it throws errors that it is unable to find variaus parts of .net 3.5 framework. Now it should work fine.

More information at: http://download.microsoft.com/download/A/2/8/A2807F78-C861-4B66-9B31-9205C3F22252/VS2008SP1Readme.htm#General%20Issues Section 2.3.1.1. - Enable Samesite for the .NET Framework 3.5 SP1 bootstrapper package

Upvotes: 5

Related Questions