QSqlDatabase::addDatabase奔溃及driver not loaded解决

Qt开发:QSqlDatabase的常见用法 本文主要介绍QSqlDatabase的常见用法。 阅读详情

1.奔溃

如下代码:

#include "QtGuiApplication1.h"
#include "qsqldatabase.h"
#include "qsqlquery.h"
#include "qdebug.h"

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

    QSqlDatabase db = QSqlDatabase::addDatabase("QPSQL");
    db.setHostName("127.0.0.1");
    db.setDatabaseName("postgis_24_sample");
    db.setPort(5432);
    db.setUserName("postgres");
    db.setPassword("admin");
    bool ok = db.open();

    int b = ok;
    QSqlQuery query;
    query.exec("Select * from \"Pipes\"");
    while (query.next())
    {
        QString id = query.value(1).toString();
        qDebug() << id;
    }
}

运行到第11行时会奔溃,排查了好久,原因如下:

     使用的QPSQL数据库驱动和当前编写代码的Qt版本不一致造成的,如:当前用的Qt为Qt 5.14.1,但是第11行加载的数据库驱动qsqlpsql.dll是其它Qt版本的,如:是Qt 5.15.1.当版本不兼容时,有时会崩溃。比如:有时是从其它Qt版本拷贝过来的数据库驱动。数据库驱动一般在Qt安装目录下的  plugins\sqldrivers   目录下。比如我本机是:

C:\Qt_5_12_3\Qt5.12.3\5.12.3\msvc2017\plugins\qldrivers

2.连接失败

第17行即ok返回false,该原因一般是找不到数据库驱动导致,报错如下:

  driver not loaded

用以下代码输出数据库驱动程序为空:

qDebug() << QSqlDatabase::drivers() << "\r\n";

解决方法有两种:

1):新增系统变量QT_PLUGIN_PATH,根据每个人QT系统安装路径进行配置,比如我的系统C:\Qt_5_12_3\Qt5.12.3\5.12.3\msvc2017\plugins。然后重启开发环境,如:重启VS、QtCreator。

2):通过如下代码将数据库驱动程序所在的插件目录加入到库搜索目录中:

QCoreApplication::addLibraryPath(R"(C:\Qt_5_12_3\Qt5.12.3\5.12.3\msvc2017\plugins)");

根据每个人QT系统安装路径进行配置,比如我的系统是:

C:\Qt_5_12_3\Qt5.12.3\5.12.3\msvc2017\plugins

说明:一般都将插件目录(如:C:\Qt_5_12_3\Qt5.12.3\5.12.3\msvc2017\plugins)放到可执行文件同一目录下。最好是在应用程序文件夹下创建 plugins 文件夹,然后到本机上对应Qt版本的安装目录,把sqldrivers目录拷贝到刚创建的plugins文件夹下,然后在main函数中加入如下代码:

QCoreApplication::addLibraryPath(QCoreApplication::applicationDirPath() +"/plugins");

Qt QSqlDatabase类详解 QSqlDatabase类提供了一个通过连接访问数据库的接口,QSqlDatabase的一个实例表示连接,该连接通过一个受支持的数据库驱动程序提供对数据库的访问,该驱动程序是从QSqlDriver派生的,或者,您可以从QSqlDriver中子类化自己的数据库驱动程序... 阅读详情

相关推荐

使用了QSqlDatabase数据库,报错:Driver not loaded

1.环境 (1)已经安装了sqlite; (2)qt-opensource-windows-x86-msvc2010_opengl-5.4.0.exe; (3)使用vs2010来开发。 2.现象 若加入如下代码: QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");          db.setDatabas

llfwdd的专栏 3045

关于QSqlDatabase的addDatabase函数的使用注意

addDatabase的函数原型如下: [static] QSqlDatabase QSqlDatabase::addDatabase(const QString &type, const QString &connectionName = QLatin1String( defaultConnection )) 注意这个函数有第二个参数!!! 今天遇到的问题就是:一个项目需要用到两个数据库,我就想先打开数据库,然后把所有数据库的句柄先保存起来,后面可以直接使用。 但是现在出现一个问题就是:

“时光清浅,不觉多年”的博客 1万+

Qt5.3.1 ubuntu14.0464bit QSqlDatabase: QMYSQL driver not loaded的解决方案 real solution

1.现象在连接数据库的时候出现 ./hello-pc QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL72.趟过的坑ldd 查看plugins 下的动态库/gcc_64/plugins/sqldrivers$ ldd libqsq

pddddd的专栏 2735

Qt SQL:QSqlDatabase

Qt SQL:QSqlDatabase

友善啊,朋友的博客 8288

qsqldatabase连接mysql_QT连接Mysql数据库时出现”QSqlDatabase: QMYSQL driver not loaded”解决方法...

一、出现问题的代码段bool DbManager::OpenDatabases(){qDebug() << "drivers" << QSqlDatabase::drivers();//显示本机已有的数据库驱动QString connectName ="QMYSQL";//确保多次打开不会重复添加if(QSqlDatabase::contains(connectName))...

weixin_42513170的博客 834

别再被‘Driver not loaded’折磨了!Qt5.12.12连接MySQL8.0保姆级排错指南

当你在Qt项目中尝试连接MySQL数据库时,最令人沮丧的莫过于看到"Driver not loaded"这个错误提示。在实际项目中,我遇到过各种稀奇古怪的连接问题,但通过系统地排查驱动加载、库依赖和认证机制,最终都能找到解决方案。记住,当遇到"Driver not loaded"错误时,最重要的是保持耐心,按照本文提供的步骤逐一检查,问题终将迎刃而解。Qt的MySQL驱动默认是不包含在二进制安装包中的,需要从源代码编译。编译完成后,需要将生成的文件和MySQL的库文件放置到正确的位置。

weixin_33860553的博客 323

解决问题 Qt + MySql:"QSqlDatabase: QMYSQL driver not loaded"

原文地址::https://blog.youkuaiyun.com/sigmarising/article/details/80664639 相关文章 1、QSqlDatabase: QMYSQL driver not loaded问题解决方法----https://blog.youkuaiyun.com/justenjoyitpy/article/details/71158239 解决问题 Qt + MySql:”QSqlDatabase: QMYSQL driver not loaded” 开发环境 Windows.

xqhrs232的专栏 245

Qt C++数据库编程:QSqlDatabase与QSqlQuery安全高效实践指南

数据库连接管理与SQL执行是软件开发中的基础技术概念,其核心原理在于通过驱动、连接和查询三层架构实现数据持久化。在C++开发中,Qt框架的数据库模块提供了跨平台的解决方案,其技术价值在于通过封装底层细节,简化数据库操作,同时确保资源高效利用和数据安全。在实际应用场景中,开发者常面临连接泄漏、SQL注入和事务一致性等挑战。本文聚焦于Qt的QSqlDatabase和QSqlQuery类,深入探讨如何通过连接复用、参数化查询和事务处理等最佳实践,构建健壮的数据库访问层。文章结合参数化查询和连接管理等热词,提供了从

weixin_34208185的博客 293

Qt中遇到QSqlDatabase: QMYSQL driver not loaded的解决方案

1、Qt中打开MySql报错: 默认安装Qt的情况下,运行下面的代码会报错提示: QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("127.0.0.1"); db.setUserName("root"); db.setPassword("taoge"); db.setDatabaseName("info"); if(!db.open()) {

swt18772101268的博客 759

【QT开发】数据库连接管理QSqlDatabase类详解及实战应用

QSqlDatabase 是 Qt 提供的一个功能强大且灵活的数据库连接管理类,通过本篇文章的学习,你应该对 QSqlDatabase 有了全面的理解,能够在自己的项目中正确使用它。QSqlDatabase 在用户

科技改变人类,技术成就未来 2514

ffmpeg中av_read_frame阻塞的原因与解决方案

最近用到ffmpeg,想要av_read_frame立即返回,但是看网上的博客,都没有详细的解说,那就自己看源码。 两种方法: 设置回调打断函数和设置超时 超时,但是如果只设置该参数,依然会在av_read_frame中阻塞, av_dict_set(&inputDic, "stimeout", "2*1000*1000", 0); // milliseconds //打断回调 m_avformatCtx->interrupt_callback.callback = interru

weixin_43360707的博客 1万+

Error:QSqlDatabase: QMYSQL driver not loaded (Qt+C++ 找不到mysql的驱动)

解决QSqlDatabase: QMYSQL driver not loaded (Qt+C++ 找不到mysql的驱动)问题

林夕07 586

深入解析i2cdetect:从基础命令到高级读写操作

本文深入解析Linux下i2cdetect工具,从基础安装、总线扫描到高级读写操作。作为i2c-tools的核心组件,i2cdetect是硬件调试的得力侦探,能快速识别I2C总线上的设备地址。文章还涵盖了i2cdump、i2cset、i2cget等进阶工具,并介绍了如何在C程序中调用读写接口进行嵌入式开发,是掌握I2C通信调试的实用指南。

weixin_29189987的博客 372

Qt 连接数据库失败 QSqlDatabase: QMYSQL driver not loaded

哎呀妈妈妈妈 终于成功了!! 一定要用博客记录下来 昨天晚上到十二点半都没弄出来 今天早上起来就搞到现在才弄好~ 解决方案拉到最下面。 *db =QSqlDatabase::addDatabase("QMYSQL"); db->setHostName("127.0.0.1"); db->setDatabaseName("MMdb");...

a3161848321的博客 509

U8采购入库单CO接口开发实战:加载、新增与删除操作详解

本文详细解析了用友U8采购入库单CO接口的开发实战,重点介绍了加载、新增与删除三大核心操作的实现方法。通过C#代码示例和实际项目经验,帮助开发者高效处理采购入库单,提升企业供应链管理效率。文章还涵盖了环境配置、异常处理、性能优化等关键技巧,适合U8二次开发人员参考。

weixin_33462927的博客 374

在Matlab中开发AutoSAR模型的流程(自下而上)

前面介绍了AutoSAR软件组件开发的两种方式,其中自下向上的方式,是从模型出发,流程如下。

小胡同学的工程师学习之路 5366

unbuntu14下Qt4.8 和MySQL连接问题 QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: Q...

使用QSqlDatabase::addDatabase创建数据库时 会报错: QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE 这是因为Qt 的sqldrivers文件中缺少libqsqlmysql.so 动态库 在终端下使用sudoapt-getinstall l...

weixin_30498807的博客 215

iOS Certificates, Identifiers & Profiles简介

1. Certificates Certificates是生成开发和生产所需的证书。 2.1 certSigningRequest文件 生成证书前,需要先生成certSigningRequest文件,certSigningRequest文件由【钥匙串访问】生成。 选择菜单【钥匙串访问】,【证书助理】下的【从证书颁发机构请求证书…】 填写【用户电子邮件地址: 】,将【请求是:】的选项改为【储存到磁盘】 输入certSigningRequest文件的文件名,并指定保存位置。 保存certSignin

假装你是大灰狼的专栏 7058

QT×SQLite数据库的坑(1):明明第一个SQLite数据库可以跑通,为什么第二个就驱动没有加载?Driver not loaded

个人推测原理是,addDatabase函数创建了一个链接的通道,第一个参数规定了通道的类型,第二个参数规定了通道的ID。当重复出现db.addDatabase()时,如果其参数相同,会被认为通道已存在,然后将db链接至通道的一头。(可能是同一个父对象中,也可能是不同的父对象中)且都使用了同一个数据库驱动,如“SQLITE”。关于怎么使用SQLite数据库站内有相当的帖子,大家自行搜索,本回答主要解决为什么一切正常,甚至第一个数据库都跑起来了,第二个却报错驱动不加载的问题。一般的教程,仅仅使用。

qq_44346652的博客 844

交换机救命命令手册:华为 & 思科平台最全运维指令速查表

很多时候,真正拉你一把的不是“高深理论”,而是你手里有没有一份靠得住的命令速查表。这篇文章,希望能成为你“进可调试,退可排障”的一份救命卡片。

HuaweiLab_Peach的博客 1515

【无人机路径规划】基于强化学习实现多无人机路径规划

【无人机路径规划】基于强化学习实现多无人机路径规划

k8291121的博客 1656

qt打开slqite,提示“Driver not loaded!”

问题: qt打开slqite,提示“Driver not loaded!” 有问题的代码: QSqlDatabase m_db; m_db.addDatabase("QSQLITE"); m_db.setDatabaseName(dbPath); m_db.open(); OK的代码: QSqlDatabase m_db; m_db = m_db.addDatabase("QSQLITE"); m_db.setDatabaseName(dbPath);

qq_43248127的博客 362

操作系统实验四 进程运行轨迹的跟踪与统计(哈工大李治军)

实验4 进程运行轨迹的跟踪与统计 实验目的 掌握 Linux 下的多进程编程技术; 通过对进程运行轨迹的跟踪来形象化进程的概念; 在进程运行轨迹跟踪的基础上进行相应的数据统计,从而能对进程调度算法进行实际的量化评价,更进一步加深对调度和调度算法的理解,获得能在实际操作系统上对调度算法进行实验数据对比的直接经验。 实验内容 进程从创建(Linux 下调用 fork())到结束的整个过程就是进程的生命期,进程在其生命期中的运行轨迹实际上就表现为进程状态的多次切换,如进程创建以后会成为就绪态;当该进程被调度以

leoabcd12的博客 4653

QSqlDatabase: QMYSQL driver not loaded问题解决方法----本人备注

原文地址::https://blog.youkuaiyun.com/justenjoyitpy/article/details/71158239 1.错误描述: 有QMYSQL driver,但driver无法被加载 原环境: Qt Creator:5.8.0 for windows 64-bit(VS 2013) MySQL:wampserver集成 MySQL5.5.20 32bit 2.解决方法: 因为 Qt Creator与MySQL位数不统一,所以新下了一个 Qt 5.8.0 for Wi..

xqhrs232的专栏 485

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

QT中ODBC连接数据库提示QSqlDatabase: QODBC driver not loaded

1.到Qt安装目录下,找到ODBC驱动文件(D:\Qt\Qt5.11.1\5.11.1\msvc2017_64\plugins\sqldrivers) 2.在个人QT工程的目标程序目录下建立文件夹sqldrivers,并将对应数据库的驱动文件放进去,文件夹名字一定要是sqldrivers ......

Think88666的博客 5547

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

qt连接mysql中出现QSqlDatabase: QMYSQL driver not loaded

qt5.11 64bits+mysql8 64bits可以看这个,否则是32bits可以参考StackOverflow 最终解决方案有两种,一种是使用ODBC. 一种更为简单的是直接拷贝文件. 网络上其他的直接拷贝64bits的方法再此版本中不可用,就算没有出现QSqlDatabase: QMYSQL driver not loaded也会出现进入不了数据库的情况。 顺便标记下知识点,mysql8...

NONOC的博客 555

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: Qt写的、跨平台解析Excel文件的QXlsx库
下一篇: 利用QLineEdit的正则表达式校验器显示IP地址
荆楚闲人
博客等级 码龄20年 3万+粉丝 473原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值