Visual C++6.0編寫Win32動態庫

百度這類文章很多,但我這裏給來一個直接操作版:
第一步:新建項目:
在這裏插入圖片描述
選擇Win 32 DynamicLink Library,輸入工程名稱比如TestDll,點確定:
在這裏插入圖片描述
這裏選擇一個空的DLL工程(讓我們思路能更清晰)。
工程創建好後,裏面什麼也沒有。
點文件–新建–C/C++Header Files,輸入文件名比如TestDll.h:
在這裏插入圖片描述
點擊確定,在頭文件裏輸入如下代碼:

#ifndef TESTDLL_H
#define TESTDLL_H

#define DLL_API _declspec(dllimport)

DLL_API int testAdd(int a, int b);

#endif

文件–新建–C++SourceFile,輸入文件名如TestDll.c:
在這裏插入圖片描述
點確定後,輸入如下內容:

#include "TestDll.h"

int testAdd(int a, int b)
{
	return a + b;
}

整個工作區文件一覽:
在這裏插入圖片描述
點擊組件–批組件…:
在這裏插入圖片描述
點擊創建按鈕後,打開TestDll\Release目錄,複製TestDll.dll到別的地方使用即可。當然頭文件也要給予別人,纔好開發。

我們如果用Depends.exe打開這個dll文件,可以看到導出的函數:
在這裏插入圖片描述
這樣的dll庫可供php7.4的代碼調用,前提是php7.4開啓了ffi的支持並配置了ffi.enable=true。見文章《php7.4使用FFI連接C語言的動態庫

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章