1. 程式人生 > >建立和使用動態庫 使用def檔案

建立和使用動態庫 使用def檔案

開啟vs2013 ,檔案-新建,取一個名字

我們這裡建立一個空的專案吧

新增標頭檔案MyDll.h

原始檔

建立原始檔dllmain.cpp,要包含window.h檔案,這個是vs2013自動生成的,但是你在建立專案的時候,選擇了空專案,所以就沒有,如果沒選擇空專案就會有這個檔案,但是他會包含很多的其他的依賴檔案,這裡都去除了,我們是要生成一個純淨的動態庫,

// dllmain.cpp : 定義 DLL 應用程式的入口點。
#include <windows.h>
BOOL APIENTRY DllMain(HMODULE hModule,
    DWORD  ul_reason_for_call,
    LPVOID lpReserved
    )
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return TRUE;
}

建立source.def

在此檔案第一行引號中填專案名稱就好了,EXPORTS下面表示要生成的函式名稱 格式:“名稱 @序號”)

生成解決方案,發現該專案目錄下的Debug下生成了檔案  dll   lib

2   專案呼叫庫檔案的用法

 以同樣的方式生成專案,但這次不是選擇dll了,控制檯程式

將上面專案的標頭檔案和生成的庫檔案複製到該專案來

建立自己的原始檔UseDll.cpp  內容是

有時候需要經檔案包含的目錄和庫檔案新增進來

執行

測試成功了

如果我在庫檔案中這樣寫

生成的庫檔案再拿過來