2 Lotus C API
2.1 Introduction
In Domino / Notes Toolkit, the C API is most powerful:
Almost all data objects in the Notes database can be manipulated
Databases and ACL Documents and Domain Form Views and Folder Agents can use additional menus for Notes clients to create additional Domino service tasks can be used to expand Domino / Notes event management
Main limitations:
You can't modify existing Domino / Notes software, you cannot remove its existing features, features, or change their working mechanism. Cannot modify security features and cannot modify user activity records
Supported operating system:
WindowsNT / 2000, Linux, Solaris Sparc / Intel, HP-UX, MacOS, AIX, AS / 400, S / 390, etc.
Latest version M
R5's latest version for R5.0.12, published in 2003.03.13 R6, the latest version for 6.0.1, posted on 2003.2.24
2.2 Development and use
Conditions of Use
The Lotus C API needs notes.ini and will call the Domino / Notes existing program, so you need to install the Domino Server or Notes Client.
User ID
The independent application using the Lotus C API will get information about the current user according to the information in Notes.ini, verify the user identity according to the corresponding ID file. The server ID will be used on the Domino server.
Domino / Notes Running Environment Initialization
Before calling the C API, you need to initialize the Domino running environment and clean the environment before the program is turned off. The Lotus C API provides a variety of ways to complete this work.
If some of the C APIs are followed, Domino / Notes can automatically initialize and clean up, or call the NotesiniteXtended function to complete the initialization, call the Notesterm function to complete the cleanup.
Sample:
Structure of main structure of notesmainmain () {notesiniteXtended (); ... body of the program ... NOTESTERM (); exit;} status lnpublic notesmain () {... body of the program ...} Explicitly operates initialization and cleaning automatic completion
Notes client extension
Using the C API can add additional menus to the Notes client, which needs to be added to the NOTES.INI, for example:
Addinmenus = uiaddin1.dll
The corresponding DLL needs to follow the standard of API. When the NOTES client is started, some initialization is performed according to the portfolio of the configuration file and the DLL. Using this feature, you can automatically complete the user login and authentication processing.
Expansion event management
In Domino / Notes, the operation of the various data objects triggers various events, for example, the document is opened, the document is turned off, the database is created, the database is deleted, and more. In Notes Designer, some portions can be processed accordingly, for example, WebQueryOpen, WebQuerySave, and more.
With the Lotus C API, it can greatly expand the processing capabilities of these events. You can perform additional processing before and after the Domino / Notes system processed these events, such as activity logs, data validity checks, user authentication, encryption interface and other data processing. Wait. DSAPI is a good example. In order to implement these examples, you need to follow the API specification on the code implementation, and configure in Notes.ini, for example: extMgr_addins = mymngr1.dll, mymngr2.dll
In summary, the Lotus C API provides a variety of means to manipulate the NOTES data object, and can use it to extend the functionality of the Notes client, extend the processing of the Notes event, which is very powerful. At the same time, due to the characteristics of the C language itself, its efficiency is high, but the difficulty of encoding is also the highest. Therefore, it is suitable for work that requires high requirements for data processing efficiency or only C APIs.
Lotus Domino / Notes Toolkits Summary (1)
Lotus Domino / Notes Toolkits Review (2) C API
Lotus Domino / Notes Toolkits Summary (3) C API
Lotus Domino / Notes Toolkits Review (4) Java
Lotus Domino / Notes Toolkits Summary (5) LDDJ
Lotus Domino / Notes Toolkits Summary (6) Other
Lotus Domino / Notes Toolkits Review (7) Comparison
Lotus Domino / Notes Toolkits Review (8)
Lotus Domino / Notes Toolkits Summary (Nine) Summary