VS2010 建立和呼叫動態鏈結庫

2021-06-27 12:50:43 字數 3688 閱讀 8418

建立新的動態鏈結庫 (dll) 專案

1.從「檔案」選單中,選擇「新建」,然後選擇「專案…」。

2.在「專案型別」窗格中,選擇「visual c++」下的「win32」。

3.在「模板」窗格中,選擇「win32 控制台應用程式」。

4.為專案選擇乙個名稱,如 mathfuncsdll,並將其鍵入「名稱」字段。 為解決方案選擇乙個名稱,如 dynamiclibrary,並將其鍵入「解決方案名稱」字段。

5.單擊「確定」啟動 win32 應用程式嚮導。 在「win32 應用程式嚮導」對話方塊的「概述」頁中,單擊「下一步」。

6.在「win32 應用程式嚮導」中的「應用程式設定」頁中,選擇「應用程式型別」下的「dll」(如果可用),或者選擇「控制台應用程式」(如果「dll」不可用)。 某些版本的 visual studio 不支援通過使用嚮導建立 dll 專案。 您可以稍後對此進行更改,以將專案編譯為 dll。

7.在「win32 應用程式嚮導」的「應用程式設定」頁中,選擇「附加選項」下的「空專案」。

8.單擊「完成」建立專案。

向動態鏈結庫新增類

1.若要為新類建立標頭檔案,請從「專案」選單中選擇「新增新項…」。 將顯示「新增新項」對話方塊。 在「類別」窗格中,選擇「visual c++」下的「**」。 在「模板」窗格中選擇「標頭檔案(.h)」。 為標頭檔案選擇乙個名稱,如 mathfuncsdll.h,並單擊「新增」。 將顯示乙個空白檔案。

2.新增乙個名為「mymathfuncs」的簡單類,以執行常見的算術運算,如加、減、乘和除。 **應與以下內容類似:

[cpp]view plain

copy

// mathfuncsdll.h

namespace

mathfuncs  

;  }  

3.請注意此**方法宣告中的 __declspec(dllexport) 修飾符。 這些修飾符使 dll 能夠匯出該方法以供其他應用程式使用。 有關更多資訊,請參見 dllexport, dllimport。

4.若要為新類建立原始檔,請從「專案」選單中選擇「新增新項…」。 將顯示「新增新項」對話方塊。 在「類別」窗格中,選擇「visual c++」下的「**」。 在「模板」窗格中,選擇「c++ 檔案(.cpp)」。 為原始檔選擇乙個名稱,如 mathfuncsdll.cpp,並單擊「新增」。 將顯示乙個空白檔案。

5.在原始檔中實現「mymathfuncs」的功能。 **應與以下內容類似:

[cpp]view plain

copy

// mathfuncsdll.cpp

// compile with: /ehsc /ld

#include "mathfuncsdll.h"

#include 

using

namespace

std;  

namespace

mathfuncs  

double

mymathfuncs::subtract(

double

a, double

b)  

double

mymathfuncs::multiply(

double

a, double

b)  

double

mymathfuncs::divide(

double

a, double

b)  

return

a / b;  

}  }  

6.若要將專案生成為 dll,請從「專案」選單中選擇 mathfuncsdll「屬性...」。 在左窗格中,選擇「配置屬性」下的「常規」。 在右窗格中,將「配置型別」更改為「動態庫(.dll)」。 單擊「確定」儲存更改。

注意 如果您從命令列生成專案,請使用 /ld 編譯器選項指定輸出檔案應為 dll。 有關更多資訊,請參見 /md、/mt、/ld(使用執行庫)。 

7.編譯該動態鏈結庫,方法是選擇「生成」選單中的「生成解決方案」。 這樣就建立了乙個可供其他程式使用的 dll。 有關 dll 的詳細資訊,請參見 dll。

建立引用動態鏈結庫的應用程式

1.若要建立將引用並使用剛建立的動態鏈結庫的應用程式,請從「檔案」選單中選擇「新建」,然後選擇「專案...」。

2.在「專案型別」窗格中,選擇「visual c++」下的「win32」。

3.在「模板」窗格中,選擇「win32 控制台應用程式」。

4.為專案選擇乙個名稱(如 myexecrefsdll),並將其鍵入「名稱」字段。 從「解決方案」旁邊的下拉列表中選擇「添入解決方案」。 這會將新專案新增到該動態鏈結庫所屬的同乙個解決方案中。

5.單擊「確定」啟動「win32 應用程式嚮導」。 在「win32 應用程式嚮導」對話方塊的「概述」頁中,單擊「下一步」。

6.在「win32 應用程式嚮導」的「應用程式設定」頁中,選擇「應用程式型別」下的「控制台應用程式」。

7.在「win32 應用程式嚮導」的「應用程式設定」頁中,清除「附加選項」下的「預編譯頭」核取方塊。

8.按「完成」建立專案。

在控制台應用程式中使用類庫的功能

1.建立新的控制台應用程式後,將為您建立乙個空程式。 原始檔的名稱與您在前面為專案選擇的名稱相同。 在本示例中,名為「myexecrefsdll.cpp」。

2.若要使用在動態鏈結庫中建立的算術例程,則必須引用該庫。 若要執行此操作,請在解決方案資源管理器中選擇 myexecrefsdll 專案,然後從「專案」選單中選擇「引用...」。 在「屬性頁」對話方塊中,展開「通用屬性」節點,選擇「框架和引用」,然後選擇「新增新引用...」按鈕。 有關「引用...」對話方塊的更多資訊,請參見「屬性頁」對話方塊 ->「通用屬性」->「框架和引用」。

3.顯示「新增引用」對話方塊。 此對話方塊列出了所有可以引用的庫。 「專案」選項卡列出了當前解決方案中的所有專案,以及它們包含的所有庫。 在「專案」選項卡中,選擇 mathfuncsdll。 然後單擊「確定」。

4.若要引用動態鏈結庫的標頭檔案,必須修改包含目錄路徑。 為此,請在「屬性頁」對話方塊中展開「配置屬性」節點,然後展開「c/c++」節點,並選擇「常規」。 在「附加包含目錄」旁邊,鍵入 mathfuncsdll.h 標頭檔案所在位置的路徑。

5.可執行檔案僅在執行時載入動態鏈結庫。 必須告訴系統在**查詢「mathfuncsdll.dll」。 您可以通過使用 path 環境變數做到這一點。 為此,請在「屬性頁」對話方塊中展開「配置屬性」節點,並選擇「除錯」。 在「環境」旁邊鍵入以下內容:path=注意 

如果要從命令列而不是從 visual studio 執行可執行檔案,則必須在命令提示符處手動更新 path 環境變數,如下所示:set path=%path%;

[cpp]view plain

copy

// myexecrefsdll.cpp

// compile with: /ehsc /link mathfuncsdll.lib

#include 

#include "mathfuncsdll.h"

using

namespace

std;  

intmain()    

7.通過從「生成」選單中選擇「生成解決方案」,生成可執行檔案。

執行應用程式

1.確保選擇「myexecrefsdll」作為預設專案。 在「解決方案資源管理器」中,選擇 myexecrefsdll,然後選擇「專案」選單中的「設為啟動專案」。

VS2010 建立和呼叫動態鏈結庫

建立新的動態鏈結庫 dll 專案 1.從 檔案 選單中,選擇 新建 然後選擇 專案 2.在 專案型別 窗格中,選擇 visual c 下的 win32 3.在 模板 窗格中,選擇 win32 控制台應用程式 4.為專案選擇乙個名稱,如 mathfuncsdll,並將其鍵入 名稱 字段。為解決方案選擇...

VS2010 建立和呼叫動態鏈結庫

建立新的動態鏈結庫 dll 專案 1.從 檔案 選單中,選擇 新建 然後選擇 專案 2.在 專案型別 窗格中,選擇 visual c 下的 win32 3.在 模板 窗格中,選擇 win32 控制台應用程式 4.為專案選擇乙個名稱,如 mathfuncsdll,並將其鍵入 名稱 字段。為解決方案選擇...

VS2010 建立WindowsService服務

1.新建乙個windows 服務 2.新增installer 這一步很重要,在處理完你的業務邏輯後需要新增乙個installer才能是你的windows服務被安裝。在vs中新增installer 右鍵你的service服務,選擇view designer 再在view designer檢視中右鍵ad...