使用動(dòng)態(tài)鏈接庫(kù)的好處這里就不提了,使用動(dòng)態(tài)鏈接庫(kù)往往需要兩個(gè)文件一個(gè)引入庫(kù).lib文件,一個(gè).dll文件。其中引入庫(kù)文件包含導(dǎo)出函數(shù)和變量的名字,.dll文件中保存實(shí)際的函數(shù)和數(shù)據(jù)。在編譯的時(shí)候,只將.lib文件鏈接.exe文件中去。.dll文件在運(yùn)行時(shí)才被鏈接,所以叫做動(dòng)態(tài)鏈接庫(kù)。 動(dòng)態(tài)鏈接庫(kù)有兩種加載方式:隱式加載和顯示加載。 下邊給出一個(gè)隱式加載的例子: 新建一個(gè)Win32 Dynamic-Link Library Project,含有DLL.h和DLL.cpp兩個(gè)文件:
編譯生成兩個(gè)文件DLL.lib和DLL.dll。下面測(cè)試這個(gè)DLL。新建一個(gè)工程DLLTest。
然后將DLL.lib和DLL.dll兩個(gè)文件拷貝到工作目錄,并添加到工程文件中。如果從編譯器中運(yùn)行程序就要在工作目錄下包含DLL.dll,如果從dubug文件夾下運(yùn)行exe文件就必須在exe文件同目錄下含有DLL.dll。DLL.lib文件一定放在工作目錄下,因?yàn)槭且推渌募溄拥摹H绻溄訄?bào)錯(cuò),嘗試在Project-Setting-Link添加DLL.lib一項(xiàng)。編譯通過后運(yùn)行程序就可以看到我們正確使用了庫(kù)中的加法。 下面介紹顯示的加載動(dòng)態(tài)鏈接庫(kù)的例子: 未完待續(xù)。。。
posted on 2008-11-21 02:28 wangwei 閱讀(190) 評(píng)論(0) 編輯 收藏 引用
Powered by: C++博客 Copyright © wangwei