You are here: > Home > Support > ToolBook Knowledge Base

Knowledge Base

Printer Friendly
What really happens when you double-click on a .TBK file to start it?
When you double-click on a .TBK file, this is what happens:

1. Windows 98/95/NT will attempt to find an executable that can launch the
file. Essentially it will look up the file association for a .TBK file.

2. If ToolBook has been installed on the computer, Windows will find a file
association entry in the Windows Registry at this location:

HKEY_CLASSES_ROOT\.tbk

Note: Even though the WIN.INI file may contain an entry for .TBK, the
setting in the Registry is used.

Also note that this process is the same for Toolbook's three other
extension types [.sbk, .spb, .ptp]

3. This .TBK Key entry will have at least this one entry:

(Default) "tbkFile"

...which means that we are being redirected to another entry and now need
to look up the following:

HKEY_CLASSES_ROOT\tbkFile

4. If you look up the new entry, you will find several subkeys including:

HKEY_CLASSES_ROOT\tbkfile\shell\open\command

5. The COMMAND key is the one that tells windows where to find the executable.
You should find this entry:

""C:\Program Files\Asymetrix\Shared Tools\tbsystem\tbload.exe" "%1""

Note: The path to tbload.exe is contained in quotes, as well as the
parameter %1. If these quotes are not set up as above, you may
have problems launching .TBK files when they exist in a path
with a long folder name or file name.

Every version of ToolBook ships with its own updated version of
TBLOAD.EXE, so depending on which versions of ToolBook you
currently have installed, your path to TBLOAD.EXE may be different.

6. That's it, now that the executable has been found, ToolBook will launch.


WHAT IS TBLOAD?
---------------
The reason that TBLOAD.EXE is associated with the .TBK file type is so that you can have several versions of ToolBook on your system, and still have the correct version of ToolBook properly launch when double-clicking on a .TBK file.

TBLOAD is 'detector' program that can peek inside of your .TBK file to determine which version of ToolBook was used to create your .TBK file. If TBLOAD can find the same version of ToolBook on your system, it will launch it. If it can't find the same version of ToolBook, it will load the newest version of ToolBook that it can find.


HOW DOES TBLOAD KNOW WHICH VERSIONS OF TOOLBOOK ARE INSTALLED?
--------------------------------------------------------------
Each version of TBLOAD.EXE has special logic built in to find your ToolBook engine(s). This is accomplished by looking into the ASYM.INI file on your system. The ASYM.INI file contains lots of configuration information including where to locate the Authoring Engines, and Runtime Engines.

ToolBook 3.x - 5.0 users will find this INI file in the WINDOWS directory. ToolBook 6.x users will find this INI file in the TBSYSTEM folder. If you have multiple versions of ToolBook installed, you will have both INI files.

Contained in this INI file is a section called [ToolBook Load Information] which contains entries for the locations of any installed Authoring Engines. These entries are used to launch the appropriate ToolBook Engine.


IS IT POSSIBLE FOR TBLOAD.EXE TO FAIL TO LOCATE THE CORRECT ENGINE?
-------------------------------------------------------------------
The 'detector' ability of TBLOAD.EXE is only able to correctly identify the current or older versions of ToolBook. For example, the TBLOAD.EXE that shipped with ToolBook 5.0 is only able to correctly identify a ToolBook 1.0 - 5.0 book, but would not have any idea what a ToolBook 6.x or 7.x file is [giving you an Invalid ToolBook Header error instead].

Because of this inability to identify future versions of ToolBook, it is very important that your .TBK file association is pointing to the newest version of TBLOAD.EXE that is on your system.

Unfortunately it is very easy to end up with your .TBK association pointing to the wrong version of TBLOAD.EXE. Whenever you install a version of ToolBook on your system, it automatically will Associate .TBK to the version of TBLOAD.EXE that is currently being installed. This means that installing ToolBook 3.x on your machine, after 6.x has already been installed, will cause the Association for .TBK to point to the 3.0 version of TBLOAD.EXE. Once this 'problem' occurs, you will not be able to double-click open a 4.0, 5.0 and 6.x file.

The fix for this is to either reinstall the newest version of ToolBook that you want on your system, which will re-associate this .TBK extension, or you can manually re-point the registry entry:

HKEY_CLASSES_ROOT\tbkfile\shell\open\command

to point to the Newest version of TBLOAD.EXE on your system. Either way will effectively correct the TBLOAD problem.

Starting in version 6.5 of ToolBook, a new feature was added to TBLOAD.EXE which allows for the ability to double-click on TBLOAD.EXE. Doing so will cause it to connect to the Asymetrix Web Site and download [and replace itself with] the newest version of TBLOAD.EXE. This will allow novice users to fix the TBLOAD problem without having to fiddle with the Registry.


WHAT IF MY .TBK FILE WAS SAVED AS AN .EXE? IS THE PROCESS THE SAME?
-------------------------------------------------------------------
If your book was saved as an EXE file, there is only a slight difference beyond the process described above. When you save your file as an .EXE it gets just a little bigger (16K or so) as ToolBook places an .EXE Header on the file.

Initially, the process is identical, with Windows trying to find an Executable that can load your .TBK file [Yes, windows knows your .EXE is really just a .TBK file].

However, if Windows fails to locate an appropriate ToolBook Engine, the .EXE Header portion of your file will take over and perform one last search attempt. This last attempt will look ONLY in the SAME directory as the ToolBook file you are trying to launch, scanning for ToolBook's Runtime Engine. If it can find the Runtime engine, your book will launch.


OPENSCRIPT NOTICE
The OpenScript programming examples found in many articles may need modification in order to work in ToolBook 9.0 or higher, particularly if the article was written for an older version of ToolBook. To learn more, click here.

  Provide Anonymous Feedback About This Article