Qt 動態載入第三方庫

2021-08-15 18:06:49 字數 1410 閱讀 4553

最近寫桌面測試程式,要使用到tsclib.dll, 只有乙個tsclib.dll和tsclib.lib檔案。因此選擇顯示呼叫dll——使用qlibrary類

在pro檔案中,新增.lib檔案的位置: libs+= -l d:/hitempt/api/ -l mydll

dll檔案在動態呼叫時有兩個作用:

1.編譯時用到,   

2.執行時用到,

因此至少在執行資料夾中有dll檔案,原始碼中dll檔案位置與指定位置相同。

定義函式指標型別
typedef int (*about)();
typedef int (*openport)(char *);
openport openport;  //定義函式指標
qlibary tscdll;   //定義qlibary結構體
bool mainwindow::dynamicload()
這是c程式設計的庫

tsclib 庫的函式原型如下

int callback openport(char*);

int callback closeport();

int callback sendcommand (char*);

int callback setup (char *,char *,char *,char *,char *,char *,char *);

int callback downloadpcx (char *filename,char *image_name);

int callback barcode (char *,char *,char *,char *,char *,char *,char *,char *,char *);

int callback printerfont (char *,char *,char *,char *,char *,char *,char *);

int callback clearbuffer();

int callback printlabel(char *, char *);

int callback formfeed();

int callback nobackfeed();

bool callback isready();

int callback windowsfont(int x, int y, int fontheight, int rotation, int fontstyle, int fontunderline, char *szfacename, char *content);

int callback about();

這樣在定義函式執行時就有的放矢。

Qt使用第三方庫

src 3rdparty lib bin 上面的資訊在 pro 檔案中提供,以便 qmake 可以解析它並生成 makefiles。makefiles 包含編譯器和鏈結器生成輸出所需的所有資訊,無論它是可執行檔案,另乙個庫檔案等。使用 includepath 變數提供 mylibrary 的 inc...

QT配置第三方庫

在windows平台用qt 配置opencv3.2舉例 在qt pro檔案中 代表注釋,代表去除 x中的內容 config your platfromyour platfrom 判斷當前平台是x86還是x86,contains qmake target.arch,x86 64 else 判斷是deb...

Qt 呼叫第三方庫

一 製作動態庫c 動態庫 c 生成dll,專案名稱mydll 件 ifndef mdll h define mdll h ifdef mylibdll define mylibdll extern c declspec dllimport else define mylibdll extern c ...