通过DLL使两个工程公用部分代码
生活随笔
收集整理的這篇文章主要介紹了
通过DLL使两个工程公用部分代码
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
最近在跟同事合作編寫一個(gè)軟件,是一個(gè)多進(jìn)程軟件,同事負(fù)責(zé)寫HMI(界面)進(jìn)程,我負(fù)責(zé)寫COMM(通信)進(jìn)程。HMI提供對(duì)共享內(nèi)存的讀寫接口,COMM和HMI都是用這個(gè)接口對(duì)共享內(nèi)存進(jìn)行度寫的。
??? 我的COMM工程要用到HMI工程提供的接口函數(shù),這時(shí)有兩個(gè)選擇:
??? 1.將HMI工程中相關(guān)的文件復(fù)制到COMM工程中,進(jìn)行編譯。這種做法帶來的一個(gè)壞處就是,每當(dāng)HMI工程對(duì)這些接口函數(shù)進(jìn)行更新,COMM工程都必須重新拷貝代碼,整合,編譯出新的可執(zhí)行文件,非常不方便。
??? 2.生成庫文件。由HMI設(shè)計(jì)者建立一個(gè)新的動(dòng)態(tài)鏈接庫DLL工程,將接口相關(guān)代碼拷貝到DLL工程中,生成一個(gè)DLL庫文件。COMM工程將DLL工程 生成的.dll文件.lib文件以及.h文件拷到工程目錄下。在Project-->Settings-->Link的 Object/library modules中加入.lib文件名,并在需要的地方引入.h頭文件。這樣HMI項(xiàng)目對(duì)接口的實(shí)現(xiàn)進(jìn)行修改后,COMM工程中只須.dll和.lib文件 即可。
??? 我的COMM工程要用到HMI工程提供的接口函數(shù),這時(shí)有兩個(gè)選擇:
??? 1.將HMI工程中相關(guān)的文件復(fù)制到COMM工程中,進(jìn)行編譯。這種做法帶來的一個(gè)壞處就是,每當(dāng)HMI工程對(duì)這些接口函數(shù)進(jìn)行更新,COMM工程都必須重新拷貝代碼,整合,編譯出新的可執(zhí)行文件,非常不方便。
??? 2.生成庫文件。由HMI設(shè)計(jì)者建立一個(gè)新的動(dòng)態(tài)鏈接庫DLL工程,將接口相關(guān)代碼拷貝到DLL工程中,生成一個(gè)DLL庫文件。COMM工程將DLL工程 生成的.dll文件.lib文件以及.h文件拷到工程目錄下。在Project-->Settings-->Link的 Object/library modules中加入.lib文件名,并在需要的地方引入.h頭文件。這樣HMI項(xiàng)目對(duì)接口的實(shí)現(xiàn)進(jìn)行修改后,COMM工程中只須.dll和.lib文件 即可。
總結(jié)
以上是生活随笔為你收集整理的通过DLL使两个工程公用部分代码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 银行卡销户钱能取出来吗
- 下一篇: sprintf,你知道多少?