Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Pitfalls/gotchas of ClickOnce/smart-client deployment in .NET [closed]

I have several .NET Windows Forms applications that I'm preparing to convert into a ClickOnce/smart-client deployment scenario. I've read the isn't-this-great tutorials, but are there pitfalls or "gotchas" that I should be aware of?

There are several minor applications used off and on, but the main application is in C#, runs 24/7, is quite large, but only changes every few weeks. It also writes to a log file locallly and talks to local hardware devices.

like image 742
Steven A. Lowe Avatar asked Sep 29 '08 17:09

Steven A. Lowe


People also ask

What is the purpose of ClickOnce deployment in C#?

ClickOnce is a deployment technology that enables you to create self-updating Windows-based applications that can be installed and run with minimal user interaction.

How do I debug ClickOnce application?

To debug this, simply attach before the button is pressed, then set a breakpoint (make sure that you open the appropriate archived file and set the breakpoint there). Use the IsNetworkDeployed property to invoke the System. Deployment.

What is .NET ClickOnce?

ClickOnce is a component of Microsoft . NET Framework 2.0 and later, and supports deploying applications made with Windows Forms or Windows Presentation Foundation. It is similar to Java Web Start for the Java Platform or Zero Install for Linux.

How do I publish my ClickOnce application?

Publishing with ClickOnce. In Solution Explorer, right-click the project and choose Publish (or use the Build > Publish menu item).


1 Answers

Here are a few that I am aware of.

  1. Can't put an icon on the desktop. You can now.

  2. I can't install for all users.

  3. I need to jump through hoops to move the deployment to a different server. It is not a problem if you are developing internally, and the users can see the server that you are publishing to or if you are deploying to the public web, but it is not great if you need to roll out to multiple customer sites independently.

  4. Since .NET 3.5 SP1 you do not need to sign the deployment manifest anymore which makes it much easier to move deployments to new servers.

  5. I can't install assemblies in the GAC. You can get around this by creating regular install packages that are pre-requisites of the ClickOnce application.

like image 134
Darrel Miller Avatar answered Sep 22 '22 02:09

Darrel Miller