README.md

nUpdate - .NET Update Solution

nUpdate is a modern update system for .NET applications.
Providing high security and an easy-to-use user interface, it is the perfect solution for your software.

nUpdate is in a very advanced state. Its development began in autumn 2013 and the project has grown up until now. It contains a lot of features and provides you with everything you'll need to manage your updates.

Also, nUpdate is designed to fit in with all operating systems since Windows Vista and its components can be used in a very flexible way. It offers you the possibility to completely customize the functionality and user interfaces. This flexiblity is based on interfaces, service providers and the Event-based or Task-based aynchronous pattern. nUpdate will also take care of your clients by using intelligent algorithms that will prevent your users from being stressed out by having to do a lot of work manually and repeatedly, such as installing every single update on its own. Instead, nUpdate connects all updates, installs them in one go and does still take care of the version order to avoid any conflicts between the packages and makes sure that the data is installed in exactly the way you wanted.

Features

Remote update package control and management

Many configuration settings

Operations let you access the file system, the registry and add the possiblity to start or stop processes and services, when installing an update. You can even execute a small C#-script.

Automated updating for all clients

Secured update packages by signing with SHA512 and 8192 Bit RSA-keys

Built-in user interface or a custom user interface can be used

Interfaces, service providers and the Event-based/Task-based asynchronous pattern add a lot of flexiblity

Smart statistics about the downloads of your published updates

Supports very large update packages

...

Installation

You can get the necessary libraries and applications from the current releases. The nUpdate library itself can also be installed in your application using the NuGet package manager.

Using NuGet

nUpdate.ProvideTAP

If you want to use nUpdate with the Taskbased Asynchronous Pattern including async and await, then install this package:

PM> Install-Package nUpdate.ProvideTAP -Version 3.2.1

Trouble installing nUpdate.ProvideTAP?

It may be that Visual Studio shows you a warning like The primary reference "nUpdate.ProvideTAP, Version=..., Culture=neutral, PublicKeyToken=..., processorArchitecture=MSIL" could not be resolved because it has an indirect dependency on the .NET Framework assembly "System.Runtime, Version=..., Culture=neutral, PublicKeyToken=..." which has a higher version "..." than the version "..." in the current target framework. and won't let you compile the project. You can fix this by going to the NuGet Package Manager and updating the Microsoft.Bcl.* packages to the newest version.

nUpdate.WithoutTAP

Otherwise, if you want to use the Eventbased Asynchronous Pattern, make sure to install this package: