Config::LotusNotes is a Perl module that allows you to access Lotus Notes/Domino configuration.
$factory = Config::LotusNotes->new();
# access default installation
$conf = $factory->default_configuration();
$data = $conf->get_environment_value('Directory');
# find all installations
@installs = $factory->get_all_configurations();
Config::LotusNotes gives you a view of your local Lotus Notes/Domino installations from the filesystem's perspective. Its main purpose is to read and manipulate the main Notes configuration file, notes.ini.
The module can handle multiple installations.
You can use it to
- enumerate local Notes/Domino installations
- gather basic information about your local Notes/Domino installations
- exchange data with Lotus Notes via the environment functions.
A Config::LotusNotes object searches the Windows registry for Lotus Notes installations, which can then be accessed in their representations as Config::LotusNotes::Configuration objects.
The Lotus Notes environment
The Lotus Notes environment is often used to store local user preferences and to share information between separate parts of an application.
The Lotus Notes formula language has the @Environment and @SetEnvironment functions and the ENVIRONMENT keyword to access the program's environment. Lotus script uses the GetEnvironmentValue, GetEnvironmentString, SetEnvironmentVar and Environ functions for that purpose. The Lotus Notes environment is stored in the notes.ini file, which is instantly updated after each change to the environment. This allows you to communicate data to external programs.
Unfortunately, Lotus Notes does not recognize external changes to notes.ini while it is running. If you need to push data to a running instance of Lotus Notes, you can use the environment functions of the corresponding OLE object as shown in "SEE ALSO". There might be problems with simultaneous programmatic and user access to the same Lotus Notes session.