Programação do aplicativo QT: QT5 no sistema Windows cria a biblioteca dinâmica DLL e completa a chamada

1. Introdução ambiental

Sistema operacional:  win10 64 bits

Versão QT:  QT5.12.6

Compilador:  MinGW 32 bits

Em segundo lugar, crie uma biblioteca dinâmica

2.1 Maneiras de criar uma biblioteca 1 

O assistente de criação de projeto QtCreate tem uma opção de projeto para criar uma biblioteca. Após criar o projeto de acordo com o assistente, escreva o código, clique em "Pequeno Martelo" no canto esquerdo inferior de QtCreate , a compilação está concluída e arquivo de biblioteca pode ser gerado no diretório de construção.

 

2.2 Maneiras de criar uma biblioteca 2

Em circunstâncias normais, o projeto pode ter sido criado antes e as funções foram concluídas, e agora desejo gerar um arquivo de biblioteca para ser chamado por outros. Neste momento, só precisa modificar o arquivo de projeto xxx.pro.

Adicione as duas linhas de código a seguir ao arquivo de projeto original.

TEMPLATE = lib

DEFINES += DLL_CREATETEST_LIBRARY

Após a modificação, basta construir o projeto. 

 

A biblioteca dinâmica desenvolvida e produzida no VS + QT pode ser configurada diretamente nas propriedades do projeto do VS:

 

Três, chame a biblioteca dinâmica

 3.1 Crie um novo projeto e chame a biblioteca dll

3.2 Copiar arquivos de biblioteca e arquivos de cabeçalho

(1) Copie todos os arquivos de cabeçalho usados ​​ao gerar a biblioteca (o projeto original) para o diretório do novo projeto (o projeto de teste que chama a biblioteca).

(2) Copie a biblioteca dinâmica dll gerada pelo projeto original para o diretório do novo projeto (o projeto de teste que chama a biblioteca).

  (3) Modifique o arquivo de projeto xxx.pro

  Adicione o código:

LIBS += $$PWD/DrawTimeLine.dll

 

(4). Modifique o código da função principal e chame a função de teste

#include <QApplication>
#include "widget.h"
#include "drawtimeline.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();
    return a.exec();
}

 

3.3 Concluir o teste de chamada

Após a conclusão da compilação, você também precisa copiar os arquivos de biblioteca dinâmica usados ​​para o diretório que acabou de criar. Caso contrário, o arquivo de biblioteca não pode ser encontrado durante o tempo de execução.

 

Acho que você gosta

Origin blog.csdn.net/xiaolong1126626497/article/details/112158922
Recomendado
Clasificación