你好,欢迎访问我的博客!登录
当前位置:首页 - QT - 正文 求知成瘾,却无作品!

QT使用qxmpp(vs2019)

2020-02-25QT攻城狮343°c
A+ A-

本地环境和qxmpp编译过程我这里不在赘述,可以参考另一篇文章QT使用qxmpp(qt creator)中前半部分,里面详细描述了我的本机环境以及编译安装qxmpp库的过程,我这里只记录在vs中创建的qt项目如何使用编译好的qmxpp库并成功连接至openfire。

在vs中创建qt项目跟着向导走就可以了,需要注意的是选择qt模块的时候勾上Network模块,因为是网络应用,所以这个模块得有:

1.png

其他的我都是默认走的,创建好项目后,把编译安装好的qxmpp的lib和include文件夹(我的是在C:\Program Files (x86)\qxmpp目录下)拷贝到刚刚新建的项目根目录,

2.png

然后再项目上右键--属性

3.png

添加附加包含目录,就是刚刚拷贝到项目跟路径下的include文件夹

4.png


然后继续配置连接器

5.png

添加附加依赖项qxmpp.lib

6.png

然后添加附加库目录

7.png

这里选择一开始复制到项目根目录的lib文件夹

8.png

到此,库文件添加完毕,直接在代码中Include就可以,如果没有自动提示qxmpp的库,项目上面,右键--重新扫描解决方案即可

#include "QtGuiApplication3.h"
#include "qxmpp/QXmppClient.h"
#include "qxmpp/QXmppLogger.h"


QtGuiApplication3::QtGuiApplication3(QWidget *parent)
	: QMainWindow(parent)
{
	ui.setupUi(this);

    QXmppClient* xmppClient = new QXmppClient(this);
    xmppClient->logger()->setLoggingType(QXmppLogger::StdoutLogging);
    connect(xmppClient, &QXmppClient::connected, [=]() {
        qDebug() << "服务器连接成功!";
        });


    QXmppConfiguration config;
    config.setDomain("127.0.0.1");
    config.setJid("[email protected]/qt");
    config.setHost("127.0.0.1");
    config.setPort(5222);
    config.setPassword("abc123");
    xmppClient->connectToServer(config);
}

运行项目,如果提示缺失qxmpp.dll文件,那么直接把lib中的qxmpp.dll文件拷贝到debug目录再运行即可。

项目跑起来后同样可以在openfire控制台看到test1用户已上线。


未定义标签

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。


  登录