Welcome!

PowerBuilder Authors: Dan Joe Barry, Carmen Gonzalez, Ian Thain, Yakov Werde, Paul Slater

Related Topics: PowerBuilder

PowerBuilder: Article

Smart Client Deployment in PowerBuilder 11

How the Intelligent Updater feature fits into PowerBuilder 11's .NET Smart Client support initiative

These folders contain the historic and current versions of the application. The file "mss.application" is the manifest file whose contents (XML, by the way) indicate which of the multiple stored versions is the active one published to the client workstations. Let's cause an historic manifest to become the active manifest. Rename "mss.application" as "mss_application.OLD." Let's make a copy of the "mss_1_0_0_0.application" file and rename it "mss.application." This designates this file as the manifest of the active/current version rather than an historic version of the application. Its contents point to the historic 1.0.0.0 version of your application.

As the user, run the application from the Start menu and you'll be notified that an application update is available. Accept the download, run the application, and note that the "About" window now has its first, red value in our RGB modification sequence. Whether you have five or 5,000 users, they'll all automatically get this restoration.

To complete this section, return to the "Add or Remove Programs" portion of the Control Panel and, as the user, completely uninstall this application from the workstation.

Locations, Locations, Locations: Publish, Install, and Update
Let's visit the concept of locations for .NET Smart Client deployment, three of them in fact. The Publish location is from the developer's perspective. To where does the developer (or perhaps an administrator) wish to publish the application's executables? The developer may also choose how to publish the application; via HTTP, FTP, or even using the Universal Naming Convention (UNC) to publish to a Windows shared resource/directory. The Install location is, in fact, a matter of the user's perspective. Where does the user access the executables from for initial installation purposes? For the user, the installation can be performed via HTTP, UNC, or even CD-/DVD-ROM if you and your team want. Thirdly, the Update location is from the user's or indeed the application's perspective. Where will the application transparently get the manifest file from as it checks for and then pulls down updated versions of the application? The Update location is usually the same as the Install location. The hard exception to this convention is if you've chosen to have the installation done using removable media, a CD- or DVD-ROM. So let's see this in action. Let's walk through, as a developer, using an FTP site for our Publish location and let's have the user access installation and updates through a syntactic UNC Update location.

In preparation for this next recipe sequence, you may want to peruse these resources:

Open the project object p_mss_winform if you haven't already done so. Select the Publish tabpage and rather than "Web site" choose the "FTP site" radiobutton. For the server value enter ftp://localhost and for the "Directory" value I'll enter the name of a folder I've already set up, "mss" (in fact my C:\mss directory that I've created for this tutorial). For my FTP site, I've enabled anonymous logins, so do check the "Anonymous Login" checkbox. In the "Publish page" groupbox, ensure that the "Generate publish page" and the "Open publish page after publishing" checkboxes are checked.


More Stories By John Strano

John Strano is a Sybase Technology Evangelist and is a charter member of TeamSybase. He has been using PowerBuilder since 1991 and has authored articles for multiple industry periodicals. John has been a Sybase Certified Instructor and has presented Sybase tools on an international basis since 1997. Over the last 17 years John has developed a variety of PowerBuilder applications from single-user scaling up to enterprise-class, web-based projects.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.