1. 程式人生 > 實用技巧 >QT 呼叫外部dll庫的方式 -- 隱式呼叫

QT 呼叫外部dll庫的方式 -- 隱式呼叫

1.用vs (我使用的是vs2013)編寫一個dll庫

calculator.c
-----------------------------------------------------
#include "calculator.h"


int add(int x, int y)
{
	return x + y;
}



calculator.h
-------------------------------------------

#pragma once

#include <stdio.h>
#include <stdint.h>

extern "C"
{
	__declspec(dllexport) int add(int x, int y);

}

 注意我的QT版本是64位,所以使用vs編譯的時候也應該是64位的

2.隨便新建一個QT工程。

把dll檔案和lib檔案放入一個特定的位置

我這裡新建了一個libbb資料夾,把dll檔案 lib檔案 .h檔案都放入這個資料夾中

在qt工程檔案pro中新增:

-l後面加上鍊接的名字,不需要加上lib字尾

包含 .h檔案就可以使用

這裡注意!!!!!!!!!!!!!!!!!!!!!!

拷貝過來的.h需要做一些修改

把上面的 dllexport 修改成 dllimport 這邊匯出 那邊匯入

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

在pro 檔案中還可以直接右鍵,選擇新增庫,選擇外部庫

瀏覽選擇lib庫所在的位置,點選下一步就好

不知道為啥 最後面的 -lcalculator 變成了 -lcalculatord 末尾多了一個 d 這是編不過去的,需要刪掉最後一個d 也可以使用