Release 10.1A: OpenEdge Development:
Progress 4GL Reference

> ## LOAD statement

> ##
> (Windows only)

> Creates application defaults, involving colors, fonts, environment variables, etc., or loads existing defaults, to a graphical or character application. Specifically, LOAD:

> - Creates registry keys and initialization file entries.

> - Creates new initialization files.

> - Loads entries from the registry or from an existing initialization file.

> For more information on application defaults, see the chapter on colors and fonts in OpenEdge Development: Programming Interfaces .

> Note: Does not apply to SpeedScript programming.

> #### Syntax

>     LOAD environment
>       [ DIR directory ]
>       [ APPLICATION ]
>       [ NEW ]
>       [ BASE-KEY { key-name | "INI" } ]
>       [ NO-ERROR ]

> ``environment``

> A CHARACTER expression that evaluates to one of the following:

> - The name of a registry key to create.
> - The name of an initialization file to create.
> - The name of an existing registry key.
> - The name of an existing initialization file.
> `DIR `directory``

> A CHARACTER expression that evaluates to the directory path of one of the following:

> - An existing initialization file.
> - An initialization file to create.

> If you omit this option, LOAD looks for an existing initialization file, or creates a new initialization file, in the working directory.

> `APPLICATION`

> Has no effect; supported only for backward compatibility.

> `NEW`

> Creates a new registry key or a new initialization file. If the key or file already exists, LOAD overwrites its data.

> `BASE-KEY `key-name` | “INI”`

> Bypasses the standard search rules.

> If you specify BASE-KEY `key-name`, LOAD looks for or creates the environment in the registry only under base key `key-name`.

> If you specify BASE-KEY “INI” (the quotes are required), LOAD looks for or creates only the initialization file `environment`.

> `NO-ERROR`

> Suppresses error messages while LOAD executes. When LOAD finishes, you can learn what errors, if any, occurred by using the attributes and methods of the ERROR-STATUS handle. For more information on the ERROR-STATUS handle, see the "Handle Reference" section.

> Example

> See the USE statement reference entry for an example.

> #### Notes

> - If you specify LOAD `environment`, LOAD searches for a registry key and for an existing initialization file, and tries to load one or the other. The search logic, which assumes that `environment` has the format `path`\`rootname`.`extension` (where `path` and `extension` are optional) and that `version` is the current Progress version, is as follows:

> 1. Search the registry under HKEY_CURRENT_USER for `path`\`rootname`.`extension.
>    `If found, load it.
> 2. Else search the registry under HKEY_CURRENT_USER for `SOFTWARE\PSC\PROGRESS\version\path\rootname.extension.
>    `If found, load it.
> 3. Else search the registry under HKEY_CURRENT_USER for `SOFTWARE\path\rootname.extension`.
>    If found, load it.
> 4. Else search the registry under HKEY_CURRENT_USER for `rootname.
>    `If found, load it.
> 5. Else search the registry under HKEY_CURRENT_USER for `SOFTWARE\PSC\PROGRESS\version\rootname`.
>    If found, load it.
> 6. Else search the registry under HKEY_CURRENT_USER for `SOFTWARE\rootname.
>    `If found, load it.
> 7. Else search the registry under HKEY_LOCAL_MACHINE for `path\rootname.extension.
>    `If found, load it.
> 8. Else search the registry under HKEY_LOCAL_MACHINE for `SOFTWARE\PSC\PROGRESS\version\path\rootname.extension`.
>    If found, load it.
> 9. Else search the registry under HKEY_LOCAL_MACHINE for `SOFTWARE\path\rootname.extension.
>    `If found, load it.
> 10. Else search the registry under HKEY_LOCAL_MACHINE for `rootname.
>     `If found, load it.
> 11. Else search the registry under HKEY_LOCAL_MACHINE for `SOFTWARE\PSC\PROGRESS\version\rootname.
>     `If found, load it.
> 12. Else search the registry under HKEY_LOCAL_MACHINE for `SOFTWARE\rootname.
>     `If found, load it.
> 13. Else search for the initialization file `path\rootname.extension`.
>     If found, load it.
> 14. Else, error.
> - If you specify LOAD `environment` BASE-KEY `key-name`, where `key-name` is the name of a registry base key, LOAD loads the registry key `key-name\environment.`

> Registry base keys are as follows:

> - HKEY_CLASSES_ROOT
> - HKEY_CURRENT_CONFIG (Win95 and NT 4.0)
> - HKEY_CURRENT_USER
> - HKEY_DYN_DATA (Win95 and NT 4.0)
> - HKEY_LOCAL_MACHINE
> - HKEY_USERS
> - If you specify LOAD `environment` BASE-KEY “INI,” LOAD loads the initialization file `environment`.

> - If you specify LOAD `environment` NEW, LOAD creates a new key in the registry under HKEY_CURRENT_USER and names the new key `environment`.

> - If you specify LOAD `environment` NEW BASE-KEY `key-name`, LOAD creates a new key in the registry under `key-name` and names the new key `environment`.

> - If you specify LOAD `environment` NEW BASE-KEY “INI,” LOAD creates a new initialization file and names it `environment.ini`.

> - To change the application environment, load defaults using the LOAD statement, make them current using the USE statement, then access them using the GET-KEY-VALUE and PUT-KEY-VALUE statements.

> #### See also

> GET-KEY-VALUE statement, LOAD statement, PUT-KEY-VALUE statement, UNLOAD statement, USE statement

Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095