Pro/TOOLKIT是Pro/ENGINEER軟件系統(tǒng)提供的完全基于C語言的用戶化工具箱,也稱為用戶接口(API),它提供了大量的C語言庫函數(shù),能夠使外部應(yīng)用程序(客戶應(yīng)用程序)安全有效地訪問Pro/ENGINEER數(shù)據(jù)庫和應(yīng)用程序。并且通過C語言編程及應(yīng)用程序與Pro/ENGINEER系統(tǒng)的無縫集成,客戶和第三方能夠在Pro/ENGINEER系統(tǒng)中添加所需的功能,并借助第三方編譯環(huán)境進(jìn)行調(diào)試。
總的來說,Pro/TOOLKIT應(yīng)用程序有兩種工作模式,一種為同步模式(SYNCHRONOUS MODE):另一種為異步模式(ASYNCHRONOUS MODE)。
同步模式包括兩種模式,即動(dòng)態(tài)連接庫模式(DLL MODE)和多進(jìn)程模式(MULTIPROCESS MODE),也稱為派生模式,SPAWNED MODE)。DLL MODE是將Pro/TOOLKIT應(yīng)用程序集成到Pro/ENGINEER中的標(biāo)準(zhǔn)方法。用戶編譯C語言應(yīng)用程序,與Pro/ENGINEER庫連接。MULTIPROCESS MODE是Pro/TOOLKIT支持的第二種將應(yīng)用程序和Pro/ENGINEER集成的方法。在此種模式下,應(yīng)用程序代碼經(jīng)過編譯和連接,生成獨(dú)立的執(zhí)行文件。該文件由Pro/ENGINEER派生,并作為Pro/ENGINEER的子進(jìn)程進(jìn)行。
兩種模式的比較:在DLL MODE下,Pro/TOOLKIT應(yīng)用程序與Pro/ENGINEER的信息交換是通過直接函數(shù)調(diào)用實(shí)現(xiàn)的;在MULTIPROCESS MODE下,信息交換是由進(jìn)程之間消息系統(tǒng)完成的,該系統(tǒng)模擬直接函數(shù)調(diào)用,在兩個(gè)進(jìn)程間傳遞函數(shù)的識(shí)別信息及其參數(shù)。異步模式較之同步模式,具有代碼復(fù)雜,執(zhí)行速度慢的缺點(diǎn)。除非特別需要,一般不建議采用異步模式。
2.6 基于Pro/TOOLKIT二次開發(fā)的基本過程
開發(fā)過程主要包括三個(gè)步驟。
(1)編寫源文件。包括資源文件和程序文件。資源文件包括菜單資源文件、窗口信息資源文件和對(duì)話框資源文件等。
程序資源文件是用C語言程序,是整個(gè)Pro/TOOLKIT程序開發(fā)的核心部分。從功能上分,程序設(shè)計(jì)的主要工作體現(xiàn)在兩個(gè)方面:一是按Pro/TOOLKIT應(yīng)用程序在Pro/ENGINEER環(huán)境運(yùn)行的要求設(shè)計(jì)接口程序和應(yīng)用程序運(yùn)行結(jié)束時(shí)的終止程序;二是根據(jù)功能需求設(shè)計(jì)Pro/TOOLKIT應(yīng)用程序主體部分。前者是系統(tǒng)所要求的初始化部分和終止部分,后者是完成應(yīng)用程序預(yù)定功能的一個(gè)或多個(gè)CPP源程序。
(2)程序的編譯和連接。利用VC的應(yīng)用程序設(shè)計(jì)向?qū)Э梢苑奖憧旖莸貏?chuàng)建Pro/TOOLKIT應(yīng)用程序的基本框架,并進(jìn)行編譯和連接。