Clickonce update - how to

MaWMaW Member Posts: 74
edited 2014-03-18 in NAV Three Tier
Hi,
We're about to update our shared hosted environment with NAV 2013 R2 Rollup update 4.
The documentation is pretty clear on how to update serverside, help etc.

But how do we update the clickonce clients?

Right now we have clickonce packages on a server xxx.yyy/customer/clickonce/NAVClientinstallation.html and .../Deployment/Microsoft.Dynamics.Nav.Client.application etc.

We know we need to make the new client files available, but how?
Can we replace the .../Deployment/Applicationsfiles folder, or do we make a new folder only with the new files in it?
Which files do we change, and with what entries? I tried searching MSDN for this specific issue, but haven't found a guide helping me.

The file Microsoft.Dynamics.Nav.Client.application has the following parameters:
<subscription>
<update>
<beforeApplicationStartup />
</update>
</subscription>

So in my book that says that the client will check for update every time it starts.

Thanks.

Comments

  • vremeni4vremeni4 Member Posts: 323
    Hi,

    Very interesting question.
    I never tried this my self but I would think that it should work.

    I would take a backup of the whole folder "xxx.yyy/customer/clickonce/".
    Copy the Rollup 4 files (RTC Client file) on the server xxx.yyy/customer/clickonce/ApplicationFiles
    As the files are updated/changed the manifest won't be valid any more.
    So you probably need to run
    Deployment\ApplicationFiles>mage -update Microsoft.Dynamics.Nav.Client.exe.manifest -fromdirectory .

    Make sure that application file did not change
    this section
    <deploymentProvider codebase="xxx.yyy/customer" />
    should be the same.
    Then create a new application manifest:
    Deployment>mage -update Microsoft.Dynamics.Nav.Client.application -appmanifest ApplicationFiles\Microsoft.Dynamics.Nav.Cli
    ent.exe.manifest -appcodebase xxx.yyy/customer/clickonce/Deployment/ApplicationFiles/Microsoft.Dynamics.Nav.Client.exe.manifest

    More info on cliconce installation can be found here
    http://msdn.microsoft.com/en-us/library/hh997056%28v=nav.71%29.aspx

    I hope this helps.
  • GreatScott000GreatScott000 Member Posts: 40
    You have to change the version number and minimum required version in the manifest in order for the ClickOnce to recognize there has been a change. See this section "Upgrading to a New Version of the Microsoft Dynamics NAV Client" in this http://msdn.microsoft.com/en-us/library/hh997056(v=nav.70).aspx article for details.
  • ChristianDamm_[MSFT]ChristianDamm_[MSFT] Member, Microsoft Employee Posts: 15
    This video explains it in detail:

    http://msdn.microsoft.com/en-us/dynamics/nav/dn463855

    Br., Christian
    Christian Heide Damm
    Developer @ Microsoft
  • MaWMaW Member Posts: 74
    Hi,

    Thank you for your replies.
    I ended up looking an extra time at the MSDN link: http://msdn.microsoft.com/en-us/library ... 6(v=nav.71).aspx
    And also found a video from NAV 2013, describing the process pretty good: http://blogs.msdn.com/b/nav/archive/201 ... -of-5.aspx

    My main reason to headache was no documentation of which specific files were changed in the Roll up update 4. There is a complete client folder, to be pasted into the existing client folder. However that is no good when having a clickonce clientonly folder.
    I had to manually copy file by file from the update to the clickonce. The first try I got some dev. environment files, so the mage.exe gave me errors. This process would have been much easier with a listing of changed files. Could it be correct that no such documentation is available?

    Next thing was that my mage.exe would put a thumbs.db in the file list in the manifest file. The thumbs.db file should be located in the .\images\ dir. But no such file exist. So I did not find a solution to that, other than running mage.exe manually, populate the file list. Removing the thumbs.db file, and saving the manifest. Very annoying when these things have been running smoothly before. Anyone have a solution to that problem, so the clickonce process can be automated from commandline or powershell?

    But once it works, the clickonce is pretty smart :-)
Sign In or Register to comment.