ClickOnce provides an easy-to-use and flexible deployment mechanism for smart client applications built for the .NET Framework 2.0. ClickOnce offers end-user deployment, ready-made installation dialogs, a built-in security model, and automatic or on-demand updates. But while it's great to have so many built-in features, one area that users often request more control is in tracking who uses which applications, controlling access to those applications, and knowing when something goes wrong. You may just need to keep track of who is using which versions of each application at the user level. You may want to restrict access to certain applications and updates based on a user's identity or their association with a role or group. You may want to know when launch errors have occurred for particular users so that you can troubleshoot deployment problems if they exist.
This whitepaper discusses all of these scenarios. It identifies the places you can insert your own code or tools into the process for control or monitoring purposes. Several alternative solutions are discussed, allowing you to pick the approach that provides the best trade-off of complexity and control given your requirements. This whitepaper also identifies potential hazards of certain solutions that may seem like a good idea, but that can lead to fragility or unexpected results. Along the way, author gives you insight into what artifacts are being placed where when you publish and deploy a ClickOnce application.
White Paper Info - Author: Brian Noyes, Microsoft Regional Director and MVP
Published: June 2006, Revised October 2006 (sample download added)
.NET Framework 2.0
Smart client application deployment