Click here to Skip to main content
13,346,664 members (64,593 online)
Click here to Skip to main content
Add your own
alternative version


6 bookmarked
Posted 22 Apr 2012

Why you should not use Clickonce deployment as your enterprise application's deployment methodology

, 2 Oct 2012
Rate this:
Please Sign up or sign in to vote.
Why you should not use Clickonce deployment as your enterprise application's deployment methodology (especially for banks and securities companies).


If you decide to build your enterprise applications through .NET, may be the deployment strategy is one of the most important jobs in your whole project. Failure of the deployment strategy may result in lower customer satisfaction and also increase maintenance costs. Through my experience of building enterprise applications for banks and securities companies, I'll suggest four very clear reasons why you should not use Clickonce as your deployment strategy for your enterprise applications.

Three reasons why you should not choose Clickonce

Reason 1. Clickonce does not support proxy networks

If your customer company uses proxy servers for their network security and if your application is deployed under Clickonce technology, simply, your application doesn't get deployed under the proxy network.

And also I found that almost every bank and securities company uses a proxy network (HSBC, City Bank, Goldman Sachs.. and so on..). So if your clients are companies like that, just don't try to use Clickonce deployment because it does not work at all (there is a way to run Clickonce under a proxy network, if you have the power to order every customer to fix the settings of the machine.config file which is located very deep inside the Windows folder).

Reason 2. Assembly verification time is too long

Even though your application has a moderate number of assemblies, your clients should wait more than minutes to be deployed.

Reason 3. Customization is not allowed.

If you have more than 50 assemblies to be deployed, a financial company's network security device may disconnect your deployment process forcibly with sync flooding failure. Even though you know the cause of that failure, you can not GZip your assemblies into lesser than five physical files because Clickonce does not support doing that.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Jin Kwang Hwang
Architect Korea Securities Depository
Korea (Republic of) Korea (Republic of)
No Biography provided

You may also be interested in...

Comments and Discussions

BugClickonce is buggy Pin
einsteinsci23-Jul-14 9:22
membereinsteinsci23-Jul-14 9:22 
QuestionInteresting But Not Objective Pin
GrantAnderson8-Oct-12 11:49
memberGrantAnderson8-Oct-12 11:49 
QuestionIts False Pin
Dwipayan Das6-Jul-12 9:07
memberDwipayan Das6-Jul-12 9:07 
GeneralTried it, used Inno instead Pin
brother.gabriel27-Apr-12 6:47
memberbrother.gabriel27-Apr-12 6:47 
QuestionMore reasons Pin
cemal tapan24-Apr-12 2:18
membercemal tapan24-Apr-12 2:18 
QuestionWhat is your alternative solution? Pin
Bong Lee23-Apr-12 17:07
memberBong Lee23-Apr-12 17:07 
AnswerRe: What is your alternative solution? Pin
Jin Kwang Hwang23-Apr-12 17:46
memberJin Kwang Hwang23-Apr-12 17:46 
I developed launcher software which replace clickonce technology. if your clients are limited number and also they use your application under unlimited network environment, and your application is not so complex, clickonce is quite simple and easy technology to use.
but if your application is complex and also loading time and stability is critical matter, you'd better develop additional launcher software which meets your requirement.

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.180111.1 | Last Updated 2 Oct 2012
Article Copyright 2012 by Jin Kwang Hwang
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid