CBT Patch Description

The current CBT Patch (v. 3) is actually a set of 4 patches that are applied only to authoring system books to solve some problems that some authors are running into (see the info in the patch book for details.) They do not affect any application directly. You would have to run the patch again only if you reinstall CBT Edition from the original distribution disks.

What follows is probably more information than most of you want, but several people asked, so here it is:

The patches come in the form of a ToolBook book that applies the desired patch when a button is clicked. The first page of the book contains general information and the buttons that trigger a patch. You don't normally see the other pages of the book if you just apply the patches. Each of these pages contains the data necessary to replace one handler in the script of one object: file name of the book to be patched (relative to the ToolBook directory), object to be patched, old script handler text, new script handler text, and a checkbox specifying whether to do a save as to compress the patched book.

The patcher tries very hard to avoid problems. It makes a copy of the book to be patched and checks whether the text of the script handler is still the expected old handler text. If it is, it checks whether the patch has already been applied. If not, it proceeds to replace the script handler with the one prescribed in the patch. If this is successful, it then saves the patched book and deletes the old book. If compression was specified (which is the case for all 4 patches in cbtp03.tbk), it actually does a save as of the patched book over the old book. In order to do this, it must run the patched book in another instance (this is why you see it come up as a minimized icon) and use DDE to send it the save as command, then close that instance. When all is done and successful, the patcher changes the time stamp of the patched file to indicate the patch version.

Cautions: The patcher may fail to work correctly if any other ToolBook application is open when you run it, if there is not enough memory or not enough Windows resources to launch another application and communicate with it via DDE, or if there is not enough room on the drive that contains the ToolBook files for 2 copies of the patched file. Note that when patching the Tools system book (ctb30t.sbk) this means that there must be at least 2.4MB free on that drive, plus some room for other temp file if the TEMP directory is on the same drive.

-- Claude Ostyn, Asymetrix


Revised 5/23/95
brianp@u.washington.edu (Brian Parkhurst)
University of Washington
Box 357260
Seattle, WA 98195-7260
206/543-9175