Patent attributes
Disclosed herein are methods for efficient loading of extensions or “plug ins” into a host software program. In a preferred embodiment, extensions registered with the host software program are loaded when the host program is first initialized. During their loading, changes that the various extensions make to the host program are recorded in a cache file, including graphical changes to the user interface and non-graphical changes. Later, when the host program is again initialized, the cache file is read in lieu of loading the extensions, with the affect that it appears to the user that the extensions' functionality are fully present in the host application, although in reality the extensions are not yet loaded. Instead, the extensions are loaded when and if they are called, either by the user or automatically by the computer. This saves time upon host program initialization as the extensions, once cached, need not be loaded until they are called.