下面的三種方法我都沒(méi)有試驗(yàn)過(guò),也不知道有用沒(méi)用,并且具體遇到的問(wèn)題也沒(méi),所以暫時(shí)只貼個(gè)文字。
等具體試驗(yàn)成功了,我再貼上步驟圖片
1、 問(wèn)題闡述
MFC編寫(xiě)程序,都要用到動(dòng)態(tài)鏈接庫(kù),MFC相關(guān)的動(dòng)態(tài)庫(kù)有MFCD42和MFC42等,MFC框架程序已經(jīng)自動(dòng)加載,那么如何引入第三方的動(dòng)態(tài)鏈接庫(kù)到工程中呢?
2、 設(shè)置技巧
靜態(tài)鏈接庫(kù)是要先把程序中所需要使用的函數(shù)編譯成機(jī)器碼,保存在*.lib文件中。編譯器會(huì)去*.lib中找出所需要的函數(shù),并把這些函數(shù)的機(jī)器碼復(fù)制一份,放在可執(zhí)行文件中。將lib庫(kù)引入工程,有下面3種方法。
第一種方法,lib文件直接加入到工程文件列表中。
在VC中打開(kāi)“File View”一頁(yè),選中工程名,單擊鼠標(biāo)右鍵,然后在彈出的快捷菜單中選擇【Add Files to Project】命令,在彈出的文件對(duì)話框中選中要加入dll的lib文件即可。如下圖所示
第二種方法,設(shè)置工程的【Project】菜單【Settings】來(lái)加載dll的lib文件
打開(kāi)工程的【Project】菜單的【Settings】,選中【Link】,然后在“Object/library modules”下的文本框中輸入dll的lib文件。如下圖所示:
第三種方法,預(yù)編譯指令導(dǎo)入
加入預(yù)編譯指令#pragma comment(lib,”*.lib”),這種方法優(yōu)點(diǎn)是可以利用條件預(yù)編譯指令鏈接不同版本的lib文件。因?yàn)椋?/span>Debug方式下,產(chǎn)生的lib文件是Debug版本,如Regd.lib;在Release方式下,產(chǎn)生的lib文件時(shí)Release版本,如Regr.lib。當(dāng) 應(yīng)用程序?qū)?/span>dll的lib文件加載后,還需要把dll對(duì)應(yīng)的頭文件(*.h)包含到其中,在這個(gè)頭文件中給出了dll中定義的函數(shù)原型,然后根據(jù)對(duì)函數(shù)原型的聲明,就可以使用dll中的函數(shù),代碼參考如下:
引入庫(kù)test.lib,在程序的根目錄下包含文件test.dll。
#pragma commenct(lib,”test.lib”)
#include “test.h”
按照上面的方法在工程中引入庫(kù)test.lib后,就可以調(diào)用test庫(kù)中的函數(shù)了。