I studied ClickOnce today. See:
ClickOnce: Deploy and Update Your Smart Client Projects Using a Central Server -- MSDN Magazine, May 2004
Introducing Client Application Deployment with ClickOnce (Windows Forms Technical Articles)
Here are some facts to consider when using ClickOnce:
- VS 2005 deploys the files to a web, file or ftp servers. There are two manifest files, a .deploy file and a .manifest file.
- ClickOnce requires .Net framework 2.0 on user machine. It has a deployment service. When a .deploy file is downloaded, the deployment service will download the files. By default, ClickOnce installation is enabled for the users group unless the system admin disables the deployment service.
- The main application exe and other assemblies are downloaded into the per user web cache. If multiple users share the machine, multiple copies will be downloaded.
- The exe executes in a sand box with limited privilege for the corresponding web zone of the download URL. Need user permission to execute in elevated zone. Need user permission to get additional privilege, such as call the sqlclient.
- The user can always run from the URL link, or there is an option to install an icon on Start menu.
- The exe can only access isolated storage. See Isolated StorageFile API for more details.
- It is possible to sign the assemblies and define a group policy to give the assemblies elevated privilege. Users do not need to give explicit permission if there is a group policy.