1. 程式人生 > >Dev c++工具將C程式碼生成dll檔案以及如何呼叫dll檔案

Dev c++工具將C程式碼生成dll檔案以及如何呼叫dll檔案

該篇文章是對工作中一個需求的總結,工作需求是要將C語言的函式介面,生成一個DLL檔案,讓labview呼叫。然後我嘗試用dev c++開發工具來實現這個功能,後來因為DLL生成了,但labview呼叫的結果和C執行的結果不一致,因此我需要再呼叫下自己生成的DLL是否正確來定位出錯的環節,因此就有了生成DLL以及呼叫DLL檔案。首先說下DLL檔案,DLL(Dynamic Link Library)檔案為動態連結庫件又稱“應用程式拓展”,是軟體檔案型別。在Windows中,許多應用程式並不是一個完整的可執行檔案,它們被分割成一些相對獨立的動態連結庫,即DLL檔案,放置於系統中。當我們執行某一個程式

時,相應的DLL檔案就會被呼叫。一個應用程式可使用多個DLL檔案,一個DLL檔案也可能被不同的應用程式使用,這樣的DLL檔案被稱為共享DLL檔案。

一、生成DLL過程:

1、在Dev c++裡面新建一個C語言的DLL專案


2、接下來開發工具會生成一個.c和一個.h檔案


3、上圖中HelloWorl函式就是DLL動態連結庫裡面的一個介面函式

我們需要將自己的C程式碼的入口函式以及內部呼叫的子函式都寫在該.C檔案裡面,並且要在入口函式返回值前面加上DLLIMPORT(只需要入口函式加,且必須加,入口函式呼叫的子函式不加該DLL關鍵字)。


4、將.c裡面的入口函式在.h裡面宣告


5、然後編譯會在專案目錄下生成專案對應的DLL檔案(編譯時要注意編譯生成的是32位還是64位的)


到此通過Dev c++生成了DLL檔案,接下來就是通過Dev c++來呼叫DLL檔案

二、呼叫DLL檔案過程:

1、新建一個C專案


2、寫一段呼叫DLL的測試程式碼


3、下面是執行結果


到此通過Dev c++開發工具生成DLL庫檔案和呼叫DLL檔案到此就結束了,需要注意的是生成DLL或者呼叫DLL時都需要知道編譯器使用的是32位還是64位,需要以統一。