3 lotus c++ api
3.1 简介
c++ api是建立在c api的基础上的又一个工具包,两者也比较相似:
- 可以操纵domino/notes中的绝大部分数据对象:
- 数据库:创建、拷贝、复制、删除、修改acl
- 文档:创建、拷贝、删除
- 域:创建、修改、拷贝、删除,对rtf域具有强大的处理功能
- 视图和文件夹的使用
- 可以创建验证者,并能用验证者来注册用户和服务器
- 可以用来创建附加的domino服务任务
主要限制:
和c api的主要限制也很相似:
- 不能修改已有的domino/notes软件
- 不能直接修改数据库复制历史、用户活动记录等
- 不能修改notes客户端的桌面信息,例如在工作台上增删数据库图标、修改标题
支持的操作系统和编译器
| 平台 | 编辑器 | 备注 |
| ms windows nt/2000 | ms visual c++ 6.0 ibm visualage c++ 3.5 |
v2.3不支持borlad c++的编辑器,v2.1支持。 |
| solaris sparc | sun ws | |
| linux | g++ | |
| aix | ibm portapak | |
| as/400 |
最新版本
v2.3,发布于2003.03.10
3.2 开发和使用
c++ api的开发和使用和c api也很相似,同样需要notes/domino软件的支持,同样使用domino/notes的安全机制。
对象结构

除此之外,api还提供了大量公共函数来处理这些对象,并有一些内置的数据类型,例如:lnstring、lntext、lnnumber、lndatetime、lnbool、lnchar、lnint等。
程序结构 使用c++ api时,同样需要在使用之前进行domino/notes运行环境的初始化和清理,如下图所示:

开发环境
以使用ms visual c++ 6.0为例。
要注意的是c++ api中包含的一些头文件和vc使用的是同名的,例如:
mq.h, neterr.h, and stats.h
需要使用c++ api所带的头文件。因此,或者在程序中指定头文件的绝对路径,例如:
#include "c:\notescpp\include\mq.h"
或者在vc的环境配置中,将notes api的include目录列在vc的include目录前面。
总之,c++ api使用了面向对象的技术,在处理notes数据对象时,程序的逻辑比较清晰,易于阅读和维护,能以比较高的效率来开发高性能的应用。同时,在c++ api中还可以调用c api,两者结合使用,可以达到更好的效果。
lotus domino/notes toolkits综述(一)
lotus domino/notes toolkits综述(二) c api
lotus domino/notes toolkits综述(三) c++ api
lotus domino/notes toolkits综述(四) java
lotus domino/notes toolkits综述(五) lddj
lotus domino/notes toolkits综述(六) 其他
lotus domino/notes toolkits综述(七) 分析比较
lotus domino/notes toolkits综述(八) 分析比较 续
lotus domino/notes toolkits综述(九) 小结