Sunday, March 31, 2013

[ C# ] - Deploying Application with One-Click Install

1. Introduction

In this article, we will explore "Publishing the C-Sharp application" in the network path. The article shows the demonstration steps using Visual Studio 2005 IDE.

Publishing the application to a shared location benefits in such a way that the interested consumers go to that location and starts installing the published application from that network location. There is no need of cutting a CD for each client and shipping it to them.





In the above screen shot, you can see the application developers create an install-able setup and publish that in a shared location. This shared location can be:


  1. Web Location
  2. A Ftp Site
  3. Network share

Multiple clients who have access to the shared location takes the application from the shared location and installs that on their local machine. This happens for the first time. The next time onward  publisher of the application publishes the application updates on the same location. When the client starts their application they get the notification about the available update on the published location.

Publishing the application in a shared location is useful and gives benefit for both publisher and clients subscribed to the published application. In the publisher point of view, they no need to cut CDs and ship to every client. In client point of view, they will automatically get the update to the application that they are using.

In this article, we are going to look,


  1. Publishing the application in Network shared path
  2. Providing the Update notification to the Client
  3. Pushing the updates forcibly to the Installed client location

I am not providing any sample application with this article. You can try this article with any simple c# application on your own.

2. Publishing a C# application

To start the publishing wizard, open the project in visual studio, then right-click on the project name is the solution explorer. From the displayed context menu, select the publish… Option as shown below:



Then from the displayed wizard, publish the application on a network share. Once the application is published on a network share, the shared location contains a file called publish.htm by default.  Clients can access the file in the Internet explorer using the file protocol as specified below:


When a user accesses the application in Internet explorer the page looks like the below shown:


1: User navigating to publish location
2: After reviewing the content, they install the application on their local machine by clicking Install

In the video below, I explained the process of publishing the application on the network path, then installing the application by navigating to the published page on the network path.

Video 1: Explains how do you publish the application.



3. Publishing the Updates to the Application

Let us say 7 people installed the application from the network published location. Also, say the application is modified with lots of look and appearance changes and published in the same location.

In the above situation, the software update is placed on the published location. When those seven clients start their installed application next time, they get the notification that talks about getting the software update from the published location. This notification provides the end user a choice of updating the application to have the new version installed or skipping the update to use whatever version they have right now.

Click the updates button in the publish property page of the project settings. From the displayed dialog you can specify how you want to provide an update to the end user.

Providing the software updates to all the installed location via the published location is shown in the below video.

Video 2: Explains how user gets the Update from the Published location



Sometimes, we may need to push the important updates to the end locations not providing the end user the option of skipping this update. The Updates dialog has an option for that also. Use the third option shown in the below picture to push the major updates to installed subscribers.


Pushing the update to end-user is shown in the below video.

Video 3: Pushing the Major updates to end user machine.



No Sample application required for this article.

No comments:

Post a Comment

Leave your comment(s) here.

Like this site? Tell it to your Firend :)