Lotus Domino/Notes Toolkits綜述(二) C API (轉)
Lotus Domino/Notes Toolkits綜述(二) C API (轉)[@more@]
在ino/Notes的Toolkit中,C API的功能最為強大:
主要限制:
支援的操作:
NT/2000, , SPARC/, , MacOS, AIX, AS/400, S/390等。
最新版本M
R5的最新版本for R5.0.12,釋出於.03.13 R6的最新版本 for 6.0.1,釋出於2003.2.24
使用條件
Lotus C API需要notes.ini,並會Domino/Notes已有的,因此,需要Domino Server或Notes Client。
使用者身份
使用Lotus C API的獨立應用將根據notes.ini中的資訊來得到當前使用者的資訊,根據相應的ID檔案來驗證使用者身份。在Domino上程式將使用伺服器ID。
Domino/Notes執行環境初始化
在呼叫C API之前,需要初始化Domino執行環境,並且在程式關閉之前清理環境。Lotus C API提供了多種方式來完成這項工作。
如果遵循C API的某些標準,Domino/Notes能自動進行初始化和清理的工作,也可以呼叫NotesInitExtended來完成初始化,呼叫NotesTerm函式來完成清理工作。
樣例:
Structure of main Structure of NotesMain main(){
NotesInitExtended();
…
…body of the program
…
NotesTerm();
exit;
} STATUS LNPUBLIC NotesMain(){
…
… body of the program
… } 顯式進行執行環境的初始化和清理自動完成
Notes客戶端擴充套件
利用C API可以為Notes客戶端新增附加的選單,為此需要在notes.ini中新增相應的條目,例如:
AddInMenus =uiaddin1.dll
相應的dll需要遵循API的標準。Notes客戶端在啟動時,會根據檔案和dll的入口函式進行一些初始化。利用這一特性,可以自動完成使用者登入和身份驗證處理。
擴充套件事件管理
在Domino/Notes中,對各類資料物件的操作會觸發各種事件,例如,文件被開啟、文件被關閉、資料庫被建立、資料庫被刪除等等。在Notes Designer中,提供了一些入口,可以相應這些進行處理,例如:QueryOpen,WebQuerySave等等。
利用Lotus C API能大大擴充套件對這些事件的處理能力,可以在Domino/Notes系統處理這些事件之前和之後,進行額外的處理,例如活動日誌、資料有效性檢查、使用者身份、介面等資料處理等。DSAPI就是一個很好的例子。為了實現這些例子,需要在程式碼實現上遵循API的規範,並在notes.ini中進行配置,例如:
EXTMGR_ADDINS=mymngr1.dll,mymngr2.dll
總之,Lotus C API的提供了多種手段來操縱Notes資料物件,並可以利用它來擴充套件Notes客戶端的功能,擴充套件Notes事件的處理,功能非常強大。同時,由於C語言本身的特性,其很高,但編碼實現的難度也最高。因此,適合於對資料處理效率要求很高,或者是隻有C API才能完成的工作。
/Develop/Read_Article.?Id=20419">Lotus Domino/Notes Toolkits綜述(一)
2 Lotus C
2.1 簡介
在ino/Notes的Toolkit中,C API的功能最為強大:
- 可以操縱notes中幾乎所有的資料
- 資料庫及ACL
- 文件和域
- 表單
- 檢視和夾
- 可以為Notes客戶端的增加附加選單
- 可以用來建立附加的Domino服務任務
- 可以用來擴充套件Domino/Notes的事件管理
主要限制:
- 不能修改已有的Domino/Notes,不能去除其已有的功能、特性,或者改變其工作機理。
- 不能修改特性
- 不能修改活動記錄
支援的操作:
NT/2000, , SPARC/, , MacOS, AIX, AS/400, S/390等。
最新版本M
R5的最新版本for R5.0.12,釋出於.03.13 R6的最新版本 for 6.0.1,釋出於2003.2.24
2.2 開發和使用
使用條件
Lotus C API需要notes.ini,並會Domino/Notes已有的,因此,需要Domino Server或Notes Client。
使用者身份
使用Lotus C API的獨立應用將根據notes.ini中的資訊來得到當前使用者的資訊,根據相應的ID檔案來驗證使用者身份。在Domino上程式將使用伺服器ID。
Domino/Notes執行環境初始化
在呼叫C API之前,需要初始化Domino執行環境,並且在程式關閉之前清理環境。Lotus C API提供了多種方式來完成這項工作。
如果遵循C API的某些標準,Domino/Notes能自動進行初始化和清理的工作,也可以呼叫NotesInitExtended來完成初始化,呼叫NotesTerm函式來完成清理工作。
樣例:
NotesInitExtended();
…
…body of the program
…
NotesTerm();
exit;
} STATUS LNPUBLIC NotesMain(){
…
… body of the program
… } 顯式進行執行環境的初始化和清理自動完成
Notes客戶端擴充套件
利用C API可以為Notes客戶端新增附加的選單,為此需要在notes.ini中新增相應的條目,例如:
AddInMenus =uiaddin1.dll
相應的dll需要遵循API的標準。Notes客戶端在啟動時,會根據檔案和dll的入口函式進行一些初始化。利用這一特性,可以自動完成使用者登入和身份驗證處理。
擴充套件事件管理
在Domino/Notes中,對各類資料物件的操作會觸發各種事件,例如,文件被開啟、文件被關閉、資料庫被建立、資料庫被刪除等等。在Notes Designer中,提供了一些入口,可以相應這些進行處理,例如:QueryOpen,WebQuerySave等等。
利用Lotus C API能大大擴充套件對這些事件的處理能力,可以在Domino/Notes系統處理這些事件之前和之後,進行額外的處理,例如活動日誌、資料有效性檢查、使用者身份、介面等資料處理等。DSAPI就是一個很好的例子。為了實現這些例子,需要在程式碼實現上遵循API的規範,並在notes.ini中進行配置,例如:
EXTMGR_ADDINS=mymngr1.dll,mymngr2.dll
總之,Lotus C API的提供了多種手段來操縱Notes資料物件,並可以利用它來擴充套件Notes客戶端的功能,擴充套件Notes事件的處理,功能非常強大。同時,由於C語言本身的特性,其很高,但編碼實現的難度也最高。因此,適合於對資料處理效率要求很高,或者是隻有C API才能完成的工作。
/Develop/Read_Article.?Id=20419">Lotus Domino/Notes Toolkits綜述(一)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-982118/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Lotus Domino/Notes Toolkits綜述(一) (轉)
- Lotus Domino/Notes Toolkits綜述(六) 其他 (轉)
- Lotus Domino/Notes Toolkits綜述(九) 小結 (轉)
- Lotus Domino/Notes Toolkits綜述(七) 分析比較 (轉)
- Lotus Domino/Notes Toolkits綜述(八) 分析比較 續 (轉)
- Lotus Notes/Domino 的C API程式設計API程式設計
- 管窺Lotus Notes/Domino 的安全特性
- Lotus Notes/domino事件、屬性、函式和命令事件函式
- IBM Lotus Notes 和 Domino 8.5 評測指南IBM
- Lotus Notes/Domino 環境下的 OpenSocial 開發
- API安全綜述API
- 使用IBM Lotus Notes/Domino V8 郵件收回功能IBM
- 瞭解 Lotus Domino Access for Microsoft Outlook 的 Notes.ini 檔案ROS
- 使用 IBM Lotus Notes/Domino V8 郵件收回功能IBM
- Index of system requirements for Notes, Domino, Domino Administrator, Domino Designer & Notes TravelIndexUIREM
- Microsoft Exchange 和 Outlook 遷移到 IBM Lotus Domino 和 Notes 8.xROSIBM
- 手把手教你安裝Lotus Domino7.0 (二)
- IBM Lotus Sametime 8.5 綜述與新功能體驗IBM
- Lotus Domino使用的埠號
- GNOME 技術綜述(轉)
- 二零零二年IT業綜述 (轉)
- Notes中有關C++API的注意事項 (轉)C++API
- IBM Lotus Domino 8.5 效能評測IBM
- 保護 Lotus Domino 關鍵資料
- 在 Lotus Notes 複合應用中整合 Lotus Symphony
- Lotus notes問題與處理
- lotus/domino/servlet/DominoServletConfig.getServletNameServlet
- Linux啟動過程綜述(轉)Linux
- Spring綜述Spring
- 瞭解 Lotus Notes 中 Lotus Symphony 的可程式設計性程式設計
- Lotus C API Extension Manager 應用舉例API
- IBM Lotus Notes Traveler 8.5.1 的效能IBM
- IBM Lotus Notes Traveler 8.5 的效能IBM
- domino server端的Notes.ini詳解Server
- Map 綜述(二):徹頭徹尾理解 LinkedHashMapHashMap
- 藉助 Project Zero 建立 RESTful IBM Lotus DominoProjectRESTIBM
- Lotus Domino Administration Process 問題診斷
- 綜述:微軟的Linux圍剿戰(轉)微軟Linux