Windows Develop Bookmark and Share   
 index > ClickOnce and Setup & Deployment Projects > General ClickOnce Deployment Question
 

General ClickOnce Deployment Question

We have a .Net 1.1 application that we will be upgrading to .Net 3.5 this spring. For deployment, we are considering changing from InstallShield to ClickOnce to lower the barrier for upgrade/update. I have a couple of books on it and have played around with it some and I know that technically it is feasable to do what we would like to do; however, it appears to me that industry adoption has been a little slow and I wondered if that is due to any specific problems or hidden complexity?

Specifically, what we would like to do is use ClickOnce to deploy a commercial application that will run in environments ranging from very prohibitive user permissions to very open/administrative level permissions.Our applicationsupports Win2k, WinXP, and Vista.

I would be very interested in any comments or links you may have on ClickOnce acceptance, problems, successful implementations, etc. The technology seems too good to be true, so I'm a little worried it really might be.

Thanks!

Aaron

Aaronator1  Tuesday, January 01, 2008 4:20 PM
Hi, Aaronator1,

Season's Greetings!
Based on my understanding, you want to know if ClickOnce deployment is suitable for your commercial application, don't you?

In my point of view, ClickOnce deployment is suitable for most small size WinForm/Console applications developed for .Net Framework 2.0+ (WPF/VSTO are supported in .Net Framework 3.5)
To learn this in detail, let's read this article first.
http://msdn2.microsoft.com/en-us/library/e2444w33(VS.80).aspx

Generally speaking, there are two kinds of deployment methods for windows applications in visual studio,
Windows Installer and ClickOnce.

Windows installers can provide a rich user interface during the installation process and it can do some extra jobs with Custom Actions. But you will need to create a Setup Project and write some custom installer for that. Besides, the windows installers do not support automatic update, hence you will need to write your own update code in your application.

ClickOnce is quite different from Windows Installer. It does not have a rich user interface, and you cannot do any extra job during the installation process (So the applications which need to register Com controls or write some value to registry will have difficulty to deploy with ClickOnce). And another problem is that you cannot change the installation path of ClickOnce deployment. This is by design. Because ClickOnce is designed for deploying application per-user. That means no matter the user has administrator rights or not can install the application under his/her user account. The advantages of ClickOnce are 1) it provides automatic deploy process(You can deploy it to http/ftp/file share very easily) and 2)it has secure automatic update feature. You don't need to write any extra codes for updating your application to a newer version.
A more detailed compare can be found here.
http://msdn2.microsoft.com/en-us/library/142dbbz4(VS.80).aspx

As a matter of fact, there are some well known applications deployed by ClickOnce (For example, Bootstrapper Manifest Generator). But I guess most commercial products are complex and need more flexable install interface, so they are still deployed by the traditional windows installer.

If you want to deploy your application by ClickOnce. You should check
1) The application does not need to register any extra Com control
2) The user does not need to change the installation folder
3) The application size is small (or it will take a long time for the users to download)

Happy Holidays, and all the best in the New Year!
Regards




Yu Guo â€?MSFT  Thursday, January 03, 2008 4:12 AM
Hi, Aaronator1,

Season's Greetings!
Based on my understanding, you want to know if ClickOnce deployment is suitable for your commercial application, don't you?

In my point of view, ClickOnce deployment is suitable for most small size WinForm/Console applications developed for .Net Framework 2.0+ (WPF/VSTO are supported in .Net Framework 3.5)
To learn this in detail, let's read this article first.
http://msdn2.microsoft.com/en-us/library/e2444w33(VS.80).aspx

Generally speaking, there are two kinds of deployment methods for windows applications in visual studio,
Windows Installer and ClickOnce.

Windows installers can provide a rich user interface during the installation process and it can do some extra jobs with Custom Actions. But you will need to create a Setup Project and write some custom installer for that. Besides, the windows installers do not support automatic update, hence you will need to write your own update code in your application.

ClickOnce is quite different from Windows Installer. It does not have a rich user interface, and you cannot do any extra job during the installation process (So the applications which need to register Com controls or write some value to registry will have difficulty to deploy with ClickOnce). And another problem is that you cannot change the installation path of ClickOnce deployment. This is by design. Because ClickOnce is designed for deploying application per-user. That means no matter the user has administrator rights or not can install the application under his/her user account. The advantages of ClickOnce are 1) it provides automatic deploy process(You can deploy it to http/ftp/file share very easily) and 2)it has secure automatic update feature. You don't need to write any extra codes for updating your application to a newer version.
A more detailed compare can be found here.
http://msdn2.microsoft.com/en-us/library/142dbbz4(VS.80).aspx

As a matter of fact, there are some well known applications deployed by ClickOnce (For example, Bootstrapper Manifest Generator). But I guess most commercial products are complex and need more flexable install interface, so they are still deployed by the traditional windows installer.

If you want to deploy your application by ClickOnce. You should check
1) The application does not need to register any extra Com control
2) The user does not need to change the installation folder
3) The application size is small (or it will take a long time for the users to download)

Happy Holidays, and all the best in the New Year!
Regards




Yu Guo â€?MSFT  Thursday, January 03, 2008 4:12 AM

You can use google to search for other answers

Custom Search

More Threads

• adding another setup to the installer and adding shortcuts to it
• Is there any way to run a program only during the install process?
• To create a new deployment project
• some questions about Setup and Deployment Project
• Event firing order in VS.NET deployment projects
• Clickonce ManifestReader Access Denied
• how to create a custom setup package?
• Click Once Problem
• How to check the .net framework as launch condition (if .net have been removed)
• Find Target and Change Icons buttons are disabled for desktop Shotcut of my application