Qt MinGW编译CyAPI源码生成静态库,使用方法及测试

本文介绍了如何在Qt工程中使用自己编译的CyAPI静态库与USB设备进行交互。首先,将库和头文件添加到工程目录,并在.pro文件中配置库路径和包含路径。接着,修改代码以包含必要的头文件并实例化CCyUSBDevice对象,实现设备的打开、设备数量查询等操作。通过测试,验证了静态库的正确性和可用性。注意确保静态库与setupapi库的位数匹配。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 前言

之前写了如何使用Qt mingw编译CyAPI源码生成静态库,Qt MinGW编译CyAPI源码生成静态库
今天写一下使用方法和测试过程。

2. 使用

2.1 将准备好的静态库和头文件拷贝到工程目录下,或者放到自定义的目录下,我的目录结构:
在这里插入图片描述

2.2 新建Qt工程,在项目文件(.pro文件)中加入以下内容:
我的库和头文件都在工程目录下,所以此处配置路径如下,如果自己修改了路径直接在此处修改即可。或者右键项目添加外部静态库,选择库和头文件目录。

LIBS += -L$$PWD/ -lCyAPIMinGW \
				-lsetupapi

INCLUDEPATH += $$PWD/inc
DEPENDPATH += $$PWD/inc

2.3 修改mainwindow.h头文件,增加包含

#include <windows.h>
#include "CyAPI.h"

2.4 源文件中增加代码,我是直接加在了mainwindow.cpp的构造函数中

    CCyUSBDevice *USBDevice = new CCyUSBDevice();

    int n = USBDevice->DeviceCount();
    if (n > 0)
    {
        if (USBDevice->Open(0))
        {
            qDebug()<<"USBDevice->DeviceName"<<USBDevice->DeviceName;
            qDebug()<<"USBDevice->VendorID"<<USBDevice->VendorID;
            qDebug()<<"USBDevice->ProductID"<<USBDevice->ProductID;
        }
    }

2.5 运行输出结果:
在这里插入图片描述
我也简单测试了读取和发送数据都没有问题,此处就不贴代码了,大家可以根据官方示例自己研究,我这里主要是为了测试自己编译的库能不能用,所以就一切从简了。

3. 注意

两个静态库的版本一定要对应,即32位cyapi库选择32位的setupapi库,64位的要选择对应的64位库,否则编译会出错。

我的setupapi库路径:

// 32位
D:\Qt\Qt5.12.10\Tools\mingw730_32\i686-w64-mingw32\lib\libsetupapi.a

// 64位
D:\Qt\Qt5.12.10\Tools\mingw730_64\x86_64-w64-mingw32\lib\libsetupapi.a
评论 32
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

VectorAL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值