Qtダイナミックリンクライブラリの作成と使用

1510 ワード

一、dllファイルの生成
1、C++ライブラリプロジェクトを作成する.
新規->Library->C++ライブラリを作成し、「choose」をクリックします.
場所->タイプ、共有ライブラリを選択します.
モジュールのチェックは状況次第です.
最後に、工事には3つの書類があります.mylib.cpp、mylib.h、mylib_global.h.
2、コンテンツの追加、すなわちライブラリファイルが実現する機能.
例:1、uiファイルを作成する
2、このmylibを修理する.cpp、mylib.hファイル
 
 1 #include "mylib_global.h"
 2 #include 
 3 namespace Ui
 4 {
 5   class Mylib;
 6 }
 7 class MYLIBSHARED_EXPORT Mylib :public QDialog
 8 {
 9 public:
10   Mylib(QWidget *parent = 0);
11 private:
12   Ui::Mylib *ui;
13 };

 
 
1 #include "mylib.h"
2 #include "ui_mylib.h"
3 Mylib::Mylib(QWidget *parent):
4   QDialog(parent),
5   ui(new Ui::Mylib)
6 {
7   ui->setupUi(this);
8 }

 
3、構築工程は、生成するdebugディレクトリに生成された3つを見ることができる.a、.o和.dllファイル.
 
二、dllファイルを呼び出す
1.dll'ファイルを呼び出す予定のプロジェクトのプロファイルを変更する.pro
このプロジェクトでmylibを見つけることができます.hとmylib_global.hこの2つのファイル
  INCLUDEPATH += ../mylib
#この行では、コンパイラ(コンパイラであることに注意!)にこのdllファイルをどこで見つけるかを教える必要があります.
  #LIBS += ../build-mylib-Desktop_Qt_5_9_3_MinGW_32bit-Debug/debug/mylib.dll
2、前のdllファイルを本プロジェクトのソースディレクトリの下に置き、ヘッダファイルinclude「mylib.h」を加えると、接続ライブラリを呼び出すことができます.
3、プロジェクトを構築し、前のdllファイルを生成したexeの同級ディレクトリの下に置いて、プログラムを実行することができます.
 
付:1、最初のプロジェクトを構築するとき、ポップアップのダイアログボックスでdllなどのファイルの生成ディレクトリを変更することができます.ディレクトリbin_を新規作成できますdebugは、2つのプロジェクトの生成ファイルをすべて格納します.
2、include"../bin_debug/mylib.h"ができるようです.