Smart Client Deployment with ClickOnce: Deploying Windows Forms Applications with ClickOnce

Brian Noyes

  • 出版商: Addison Wesley
  • 出版日期: 2007-01-01
  • 售價: $1,740
  • 貴賓價: 9.5$1,653
  • 語言: 英文
  • 頁數: 336
  • 裝訂: Paperback
  • ISBN: 0321197690
  • ISBN-13: 9780321197696
  • 下單後立即進貨 (約2~4週)




“ClickOnce demos may look simple, but those techniques only work for simple applications. Brian Noyes gives us the information we need to use ClickOnce in the real world, and he does it with a comprehensive and organized presentation. If you expect your smart client application to move very far beyond ‘Hello,World,’ you’ll want this book to help you deploy it.”
Billy Hollis, president/owner, Elysian Consulting, Microsoft Regional Director
“Once again Brian has outdone himself. As a writer, I tend to be very critical of all technical publications, including my own . . . and it is such a pleasure to read anything Brian writes because he studies his topics well, resulting in an accurate, thorough, yet concise piece of work. ClickOnce being a new technology that deals with the pains we all have with application deployment, versioning, and security, it is important to have a text that will guide you through the learning process, give you sound advice for adopting the technology, and explain why you should even care. Brian gives his readers all of that.”
Michele Leroux Bustamante, chief architect, IDesign, Microsoft Regional Director
“ClickOnce is the key to Windows and smart client deployment. Brian’s book is the key to successfully using ClickOnce. This book walks you through using ClickOnce, from the basics to advanced scenarios. It is an excellent resource.”
Rockford Lhotka, principal technology evangelist, Magenic Technologies, Microsoft Regional Director
“Brian covers ClickOnce with a view to real-world deployment issues, which isobviously based on real-world experience. In and of itself, that is enough forme to buy the book. However, it is an even better investment by virtue of thefact that ClickOnce is a core part of the .NET Framework for Windows Forms2.0 now, and Windows Presentation Foundation in the future.”
Michael Weinhardt, SDK programmer/writer, Application Model,Windows Presentation Foundation, Microsoft
“This book covers the most important ingredient needed for the success of asmart client application—deployment. The author’s unassuming writing style,combined with his in-depth coverage of the topic, makes this book an invaluableresource for all serious smart client developers.”
Vishwas Lele, principal architect, Applied Information Sciences,Microsoft Regional Director

Microsoft’s new ClickOnce auto-updating technology can radically simplify application deployment. Using it, .NET developers and architects can deliver a powerful, smart client experience along with the easy maintenance of today’s best Web applications.

Microsoft Regional Director and MVP Brian Noyes has unsurpassed experience previewing and teaching ClickOnce to professional developers. In Smart Client Deployment with ClickOnce, Noyes demonstrates exactly how to make the most of ClickOnce in your real-world enterprise applications. Noyes covers ClickOnce design, architecture, security, installation, updates, and Bootstrapping—each with a full case study and detailed sample code.

This focused, concise book explains how to

  • Design client applications for efficient deployment and auto-updating
  • Perform application deployments and automatic updates quickly and easily
  • Deliver “on-demand” client application updates
  • Deploy prerequisites with the Visual Studio 2005 Bootstrapper
  • Take full control of ClickOnce’s powerful publishing, update, and security options
  • Leverage the Visual Studio 2005 and .NET 2.0 platform features that make ClickOnce possible
  • Understand how your application will behave in the ClickOnce runtime environment

The book’s sample code is available for download at


Table of Contents

Figures xv

Foreword xxi

Preface xxiii

Acknowledgments xxxi

About the Author xxxiii

Chapter 1: Introduction to ClickOnce 1

What Is a Smart Client Application? 2

Why Choose Smart Clients? 6

Smart Client Deployment Challenges 7

Design Goals of ClickOnce 8

ClickOnce Features 9

Terminology 10

ClickOnce Deployment Modes 12

ClickOnce Deployment Architecture 14

ClickOnce Deployment Process Overview 16

First ClickOnce Deployment: ClickOnce Hello World 17

Software Requirements for ClickOnce 26

What to Deploy (and What Not to Deploy) with ClickOnce 28

ClickOnce Versus Other Deployment Technologies 30

Smart Client Architecture Overview 32

Where Are We? 34

Chapter 2: Initial Deployment with ClickOnce 37

Publishing an Application with Visual Studio 2005 38

ClickOnce Publishing Options 38

Visual Studio Publishing Step by Step 50

ClickOnce Application Initial Deployment Step by Step 64

Moving an Application to Production 76

Moving an Application into Production with Mage 77

Where Are We? 80

Chapter 3: Automatic Application Updates 83

Automatic Update Walkthrough 84

ClickOnce Update Options 91

Behind the Scenes on the Deployment Server 99

Behind the Scenes of an Update on the Client Machine 100

Removing or Restoring Applications on the Client 104

Restoring an Application Version from the Deployment Server 105

Republishing a Previous Version 105

Where Are We? 106

Chapter 4: On-Demand Updates 107

When Do On-Demand Updates Make Sense? 108

Introducing the ClickOnce API 109

Adding Synchronous On-Demand Updates 110

Performing Updates Asynchronously 114

Update Progress Notifications 122

Combining On-Demand Updates with Automatic Updates 123

Checking Detailed Update Information 125

Gathering Information about the Current Deployment 126

Where Are We? 128

Chapter 5: Application and Data File Management 131

Application Executable Deployment 132

Adding Application Files in Visual Studio 134

Configuring ClickOnce Application Files 135

Embedding Files in the Assembly 138

Localizing Your ClickOnce Deployment 141

Programmatic Download of Application Files 147

Deploying Extensible Plug-In Applications with ClickOnce 151

Managing Application Files with Mage 157

Managing Data Files Through Visual Studio 160

Dealing with Data Files on the Client 161

Data File Update Process 164

Deploying a Client Database with Your Application 167

Migrating SQL Compact Edition Database Files 168

Where Are We? 174

Chapter 6: ClickOnce Security 177

ClickOnce Security Overview 177

Internet Explorer Security Settings Affecting ClickOnce 188

Configuring ClickOnce Security Permissions 189

Understanding and Managing Publisher Certificates 197

Signing Application Updates 208

User Prompting 210

Trusted Applications’ User Security Policies 215

Trusted Publishers’ Permission Elevation 216

Adding Restricted Code Sections 219

Securing the Application Based on User Roles 221

Securing Access to ClickOnce Application Files on the Server 222

Where Are We? 223

Chapter 7: Prerequisite Deployment with the Bootstrapper 225

Bootstrapper Features 226

Bootstrapper and ClickOnce Sample Deployment 229

Adding Items to the Bootstrapper 234

Generating Bootstrapper Manifests 245

Where Are We? 248

Chapter 8: Advanced ClickOnce Topics 249

Using URL Query String Parameters 249

Executing Custom Install/Initialization Code 255

Debugging ClickOnce Applications 256

Deploying Unmanaged Applications with ClickOnce 261

Reg-Free COM 264

Deploying ClickOnce Applications with Firefox 266

Launching a ClickOnce Application Programmatically 267

Pushing ClickOnce Installations to the Client Machine 268

Web Server ClickOnce Configuration 272

MSBuild ClickOnce Publishing 273

Where Are We? 274

Appendix A: ClickOnce Deployment of WPF Applications 277

WPF Anatomy 101 278

ClickOnce Deployment of WPF Applications 280

Sample Web Browser Application Walkthrough 281

Where Are We? 284

Index 287