chances / Animatum

An application providing a simpler alternative for animating RCT3 custom scenery.
MIT License
1 stars 1 forks source link

Create a basic web installer/auto updater #16

Open chances opened 9 years ago

chances commented 9 years ago

Create a fairly basic web installer that downloads dependencies and such.

This will minimize the initial download impact for users (greater perceived speed!). It will also allow me to update the application for users allowing me to patch it with critical bug fixes. This will be greatly appreciated in the beta phase.

Ensure Animatum only runs a single instance? (http://www.codeproject.com/Articles/134787/C-NET-Autoupdate-Application-Launcher)

http://stackoverflow.com/a/3001895

Installing Animatum

On initial load of Animatum (which is itself the installer and updater; the distributable the user initially downloaded):

  1. Setup and copy the updater to an installed location to be used by the main app later on
  2. Download app and app dependencies (SharpGL, CefSharp and its dependencies, the Timeline app, etc.)
  3. Check for and install if necessary VC++ 2012 redistributable required by CefSharp
    • Now included with Animatum distribution
  4. Perform any other initial setup
    • Setup Animatum settings
    • Create shortcuts?
    • Configure CefSharp folders?
  5. Launch Animatum
  6. Quit the updater

    Updating Animatum

Whenever Animatum launches:

  1. Check for updates.
  2. If there is an update available and the updater isn't running, launch it.
  3. If the user has not configured automatic updates (How Animatum is configured initially.), then prompt them, telling them an update is available and give them the option to download and install the update, optionally setup automatic updating, or to ignore the update.
  4. If the user decides to update Animatum, then do so, all the while showing a update progress while the user keeps working.
  5. When the update finishes downloading and installing the update, prompt the user and ask if they'd like to restart Animatum.
    • If not, quit the updater and leave the user on their merry way.
    • If so, quit animatum and update it from the updater, showing a progress if necessary.
  6. Upon update completion, relaunch Animatum.
chances commented 9 years ago

Should I switch to using Squirrel?