Solved

Deploying c# wind app to the client server?

Posted on 2011-09-24
2
348 Views
Last Modified: 2013-12-17
Hi,

I remember creating set up file to install VB win app to the client's machines.
It created a start up exe in the start menu and uninstall exe.


I have very small visual C# win app I have to give it to the client and the admin of the client site will install the app on the server.
A whil back I distribute the vb exe file and installed on the client's machines.
But this can't be done any more due to the security lock down.
1) Should I go with the clickonce or windows MSI?
When I tested the clickonce, it install in the startmenu
2) How can I tell where to install?
3) Also it didn't include the uninstall exe? How can I create that also?
4)in the property of the project in VS, it requires me to sign security and application.
Why is that required? It also create a pfx key.
5) I have to write up the install manual. Does the admin of the server at the client site require to do something?
I read some where the admin has to sign it.
What does this mean? (signing) Why does the developer sign and the admin of the server sign?

I googled and read a few deployment tutorial. The most of them pretty much same.
What will be steps to deploy this app to the client's server?
0
Comment
Question by:dkim18
2 Comments
 
LVL 40

Accepted Solution

by:
Jacques Bourgeois (James Burger) earned 500 total points
ID: 36594277
1) ClickOnce as one big advantage over the msi: automatic update. If you have to provide regular updates, the application will update automatically everytime you publish a new version.

2) ClickOnce as one big disadvantage, you cannot select the install directory, it is managed automatically by ClickOnce, in order to be able to provide the rollback feature that is built-in, should an update be defective.

3) ClickOnce does not provide an uninstall exe, it install the application so that the user can uninstall by the standard and recommended way in Windows, through the Control Panel. This is also where you will find the rollback feature mentioned in 2.

4) Signing is no longer required if you target version 3.5SP1 or 4.0 on a standard computer. It might still be required for installation on a server however, this is somethings I did not have the "pleasure" to check.

5) The signature is a security feature. It insures that when the application auto-update, the update comes from the same development team or developer. Signing is simply a way to digitally tag your application in order for the system to be able to identify it by something else thant it's name. The .pfx file you mentioned is used by the compiler when creating the application. Once an application is signed, the framework will start identifying it not only by it's name, but by a combination of it's name, version, language and signature. That means that the system will be able to make the difference between the foo.exe that you did, and the foo.exe that I do. We would not have the same .pfx, so not the same signature.

As for the admin having to "sign it", I am not sure what you mean. He might have to log in, that is gives his password for some operations, the he has nothing to sign. And usually, this is not required by ClickOnce. Special settings on the server could change that requirement however.

The steps to deploy a .msi are the same as before.

The steps to deploy ClickOnce are very easy. When you create a ClickOnce installation, it creates both an html page and a Setup.exe. Usually, you send the package to a web site or the company Intranet. It could be a directory somewhere however, and you could copy the installation package on any medium. You specify where you want to publish while preparing the ClickOnce installation. The user simply open the web page, and there is a button to install. He can also simply double-click on the Setup.exe file. That is all there is.

If the publication was done somewhere that is visible for the application (that is the force of ClickOnce and why a web site is the preferred method of distribution), the application will, by default check for a new update everytime it starts. If it finds an update at the installation location, it will tell the user and automatically install the update.
0
 

Author Comment

by:dkim18
ID: 36595101
THanks so much for your explanation.
I read online for some tof these but yours helped a lot.

0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

This document covers how to connect to SQL Server and browse its contents.  It is meant for those new to Visual Studio and/or working with Microsoft SQL Server.  It is not a guide to building SQL Server database connections in your code.  This is mo…
Jaspersoft Studio is a plugin for Eclipse that lets you create reports from a datasource.  In this article, we'll go over creating a report from a default template and setting up a datasource that connects to your database.
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
THe viewer will learn how to use NetBeans IDE 8.0 for Windows to perform CRUD operations on a MySql database.

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now