dll檔案的c 製作dll檔案的c 製作

2021-09-30 03:20:09 字數 2272 閱讀 5226

dll檔案的c++製作

1、首先用vs2005建立乙個c++的dll動態鏈結檔案,這時,

// dlltest.cpp : 定義 dll 應用程式的入口點。

//#include "stdafx.h"

//#include "dlltest.h"

#ifdef _managed

#pragma managed(push, off)

#endif

bool apientry dllmain( hmodule hmodule,

dword  ul_reason_for_call,

lpvoid lpreserved

)#ifdef _managed

#pragma managed(pop)

#endif

這段**會自動生成,

2、自己建乙個dlltest.h的標頭檔案,和dlltest.def的塊宣告檔案。

其中標頭檔案是為了宣告內部函式使用。塊宣告主要是為了在dll編譯成功後固定好方法名。別忘記新增#include "dlltest.h"

3、在dlltest.h中加入如下**

#ifndef dlltest_01

#define  dlltest_01

#define export extern "c" __declspec(dllexport)

//兩個引數做加法

export int _stdcall add(int inum1=0,int inum2=0);

//兩個引數做減法

export int _stdcall subtraction(int inum1=0,int inum2=0,int imethod=0);

#endif

4、在dlltest.def中加入如下**

library    "dlltest"

exports

addsubtraction

5、在dlltest.cpp中寫好**為

// dlltest.cpp : 定義 dll 應用程式的入口點。

//#include "stdafx.h"

#include "dlltest.h"

#ifdef _managed

#pragma managed(push, off)

#endif

bool apientry dllmain( hmodule hmodule,

dword  ul_reason_for_call,

lpvoid lpreserved

)#ifdef _managed

#pragma managed(pop)

#endif

//加函式

int apientry add(int a,int b)   // apientry  此關鍵字不可少

//減函式

int apientry subtraction(int a,int b,int i)

6、這樣編譯生成就可以得到對應的dlltest.dll的檔案了

二、c#呼叫dll檔案

1、建立乙個c#的控制台程式(當然其他也沒有問題),自動生成以下**

using system;

using system.collections.generic;

using system.text;

//using system.runtime.interopservices;

namespace csharpincludec__dll}}

2、新增命名空間using system.runtime.interopservices;

3、若要引用dll檔案,首先吧dll檔案自行拷貝到bin/debug,資料夾下,沒有的話,先編譯一下。

4、新增屬性

[dllimport("dlltest.dll", charset = charset.ansi)]

static extern int add(int inum1, int inum2);

5、最終產生**

using system;

using system.collections.generic;

using system.text;

using system.runtime.interopservices;

namespace csharpincludec__dll}}

6、生成專案執行就可以了,結果是3和1

Visual C 製作DLL檔案

一 製作.dll 1.首先建立乙個新類庫工程檔案 檔案 新建 專案 visual c 類庫。填入工程檔名稱,並且選擇檔案要存放的目錄。2.工程檔案 將class1.cs改名自己要建立的檔名 operate.cs,並填入 3.生成dll檔案 生成 生成mydll.dll,最後會在工程檔案的bin de...

C 呼叫C 的dll檔案

最近做個專案,需要圖形介面,說到圖形介面,c 要比 c 更容易實現,但是組內的其他人不怎麼會使 c 一般都用 c 這樣就需要將 c 生產為 dll檔案,然後在 c 程式彙總對其進行呼叫了。下面進行舉例 在 vc 工程中 include include usingnamespacestd extern...

C 生成DLL檔案

使用csc 命令將.cs 檔案編譯成 dll 的過程很多時候,我們需要將 cs檔案單獨編譯成 dll 檔案,操作如下 開啟命令視窗 輸入cmd 到控制台 cd c windows microsoft.net framework v1.1.4322 轉到vs.net 安裝的該目錄下 執行csc 命令c...