ClickOnce deployment allows you to publish Windows-based applications to a Web server or network file share for simplified installation. Visual Studio provides full support for publishing and updating applications deployed with ClickOnce. ClickOnce deployment is available for projects created with Visual Basic, Visual C#, and Visual J#, but not for Visual C++.
You can publish a ClickOnce application in three different ways: from a Web page, from a network file share, or from media such as a CD-ROM. A ClickOnce application can be installed on an end user's computer and run locally even when the computer is offline, or it can be run in an online-only mode without permanently installing anything on the end user's computer.
Open visual studio 2008 IDE and create a new windows application.
Go to Project –> <Application Name> Properties –> Publish
Publish Location
Publishing folder location can be either web site (http://www.mydomain.com/installation/), ftp (ftp://mydomain/installation) or file share. If you are using other than a file share to deployment, then you can provide a Installation Folder URL, since the end users may not have the permission to access the publishing folder directly. (Since I am using a shared path, installation folder URL will not be required)
Install Mode and Settings
If you select ‘The application is available online only’, each time it is run, it will be run from the published location and no start menu icon will be created.
But selecting ‘The application is available offline as well’, A shortcut on the Start menu will be created for the application and it will enable the application to be run when the user is disconnected from the network.
Publish Version
Here you should state the publish version (Not the application version). And if you check ‘Automatically increment revision with each publish’ will make sure that the revision number will get incremented automatically when you publish your application.
Application Files
Sometimes it is necessary to publish other files than the application. So this is where you state which ones to include or exclude from the deployment.
Prerequisites
You can create a setup file to install the prerequisites, which are required by your application in order to function correctly. And all required prerequisites are selected automatically. But if you want you can either add or remove them from your prerequisites setup.
Updates
In this window you should define how your application should be updated. Check ‘The application should check for updates’. And choose whether it should be updated before or after the application starts. If you choose to update it after running the application, you can mention whether you want to check each time it runs or can mention a time period, which it should check. But it is always advisable to check before application starts, so users will get the latest updates each time they run the application.
And mention a minimum required version, so that end user will get the mentioned version of the application, if they have an older version installed on their pc.
If the updating location is other than the publish location, please mention the path.
Save settings and go to the form designer and add a label to the form.
Save and go to Build –> Publish <Application Name>
If you wish do any changes to the publish settings which you completed earlier click next or click on the finish button.
Click next
Click next
And the deployment setup will be created in the published path.
Run the setup.exe to install the application. And click on install button.
Now close the application and change the label to ‘Version 1.0.0.1’. And go to publish settings and on the update window change the minimum required version to 1.0.0.1.
Click ok and save settings and publish the application.
There will be a start menu shortcut from the first installation.
Click on that to run the application. You will see an update screen and the updated application will be downloaded, installed and executed.
Above mentioned are the basic steps which is required to deploy a .Net windows application using ClickOnce.
For further information please click here
CodeProject