VS2010下生成dll的方法

2021-08-02 19:54:56 字數 1790 閱讀 8144

1.首先建立生成dll的專案:開啟vs2010,兩種途經建立dll專案,基於mfc dll的和基於win32控制台應用程式的,這裡選擇基於win32控制台建立。

a.檔案--新建--專案(專案命名為myapi)--visual c++ --win32--選擇win32控制台應用程式;

b.接下來下一步一直到如下圖,程式型別選擇dll,如無特殊需要選擇空專案完成,專案建立完畢;

2.定義標頭檔案:為專案新增標頭檔案myapi.h   內部新增如下**,

[cpp]view plain

copy

#ifndef _dll_api

#define _dll_api _declspec(dllexport)

#else

#define _dll_api _declspec(dllimport)

#endif

_dll_api int

add(

inta,

intb);  

內部定義乙個add()函式介面,如需新增其他函式介面,可以接著繼續定義,如

[cpp]view plain

copy

_dll_api 

intminus(

inta,

intb);  

_dll_api int

otherfunc(

int,

int,

int);  

3.定義原始檔:為專案新增相應的原始檔myapi.cpp   之後便是在該原始檔中對函式進行定義,內部新增如下**,

[cpp]view plain

copy

#include "myapi.h"

intadd(

inta,

intb)  

4.編譯至通過,生成dll:這裡有個小建議,因為dll專案不會生成exe,無法實時測試api,所以建議先在一般空專案內除錯並測試通過api的函式體**,然後再建立dll專案直接編譯通過,這樣更方便可靠。  回到正題,dll專案編譯通過後有用的就是myapi.h標頭檔案以及debug目錄下新生成的myapi.dll 和myapi.lib檔案,

5.呼叫dll:為了測試我們剛剛生成的dll,建立新的專案mytest。包含宣告myapi.h標頭檔案,這裡存放了定義的介面。將myapi.dll檔案放入新工程debug資料夾下(.exe執行時需要呼叫,新專案如未編譯則沒有debug資料夾,待編譯後有了該資料夾再將dll檔案放入)。將myapi.lib檔案放在與原始檔及標頭檔案相同路徑下(編譯時需要),接下來需要將.lib資源新增到專案中,兩種方法。

一種方法是,在專案屬性-鏈結器-輸入中「附加依賴項」加入myapi.lib檔案(當然,有過未設定此處亦編譯成功的經歷,但不建議);

另一種呼叫方法是在新專案主程式中新增如下命令 則無需設定依賴項;

至此,全部完成任務,編譯通過後正常使用你自己定義的api了~

VS2010下生成dll的方法

1.首先建立生成dll的專案 開啟vs2010,兩種途經建立dll專案,基於mfc dll的和基於win32控制台應用程式的,這裡選擇基於win32控制台建立。a.檔案 新建 專案 專案命名為 dll visual c win32 選擇win32控制台應用程式 b.接下來下一步一直到如下圖,程式型別...

VS2010下生成dll的方法

1.首先建立生成dll的專案 開啟vs2010,兩種途經建立dll專案,基於mfc dll的和基於win32控制台應用程式的,這裡選擇基於win32控制台建立。a.檔案 新建 專案 專案命名為myapi visual c win32 選擇win32控制台應用程式 b.接下來下一步一直到如下圖,程式型...

關於VS2010下生成lib和dll,並使用的過程

首先要準備好.h和.cpp檔案 一 lib 下一步,最好不要選預編譯選項!選預編譯頭的話,就在.cpp檔案中新增 include stdafx.h 然後新增進來.h和.cpp檔案,就可以直接點生成解決方案了。別點除錯,因為沒有入口函式。這裡要注意你生成lib的專案配置屬性要和你使用此lib的專案配置...