自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(143)
  • 收藏
  • 关注

原创 CL11命令行解析使用实例

CLI11提供了您在强大的命令行解析器中所期望的所有功能,具有美观、简洁的语法,并且以单个文件的形式提供,便于包含在项目中。这很容易适用于小型项目,但功能强大,足以支持复杂的命令行项目,并且可以针对框架进行定制。本来准备使用Boost库中program_options,不过boost整个头文件就有170MB,对于小小项目来说使用成本很高,还得编译boost库,感觉不划算。CLI11功能强大可以直接包含头文件使用,对小项目很友好。本文后面讲述CLL11的使用实例。

2024-07-18 16:02:14 330

原创 Linux下编译boost1.85

Boost提供免费的同行评审的可移植C++源库。我们强调与C++标准库配合良好的库。Boost库旨在广泛使用,并可在广泛的应用程序中使用。Boost许可证鼓励所有用户以最小的限制使用Boost库。我们的目标是建立“现有实践”并提供参考实现,以便Boost库适合最终的标准化。从库技术报告(TR1)中包含的十个Boost库开始,再到自2011年以来ISO C++标准的每次发布,C++标准委员会一直将Boost作为添加标准C++库的宝贵来源。

2024-07-18 13:51:09 272

原创 Xilinx Vitis 2020工程源目录修改

Xilinx Vitis可以做standalone程序开发,不过其工程中使用的路径为绝对路径。工程更换位置后编译将会显示错误。例如:源目录为D:/work,复制到同事电脑上放到C:/work(同事电脑只有一个C盘)。利用Vitis打开工程编译会有一堆错误,提示文件找不到。可以通过手动修改以上文件是可以解决问题,不过手动修改容易出错误。更好的方式是写一脚本来做文件路径替换,这个脚本需要处理xml和json文件。Python语言内置xml和json库,是理想语言选择。

2024-07-09 14:54:45 698

原创 扫描服务器端口(Python)

如果只知道服务器的地址,不知道其提供服务端口号,可以通过扫描所有端口方式发现服务器提供哪些端口。下面使用Python编写脚本扫描服务器端口。采用单线程扫描1-65535时间比较长,可以缩小搜索范围例如(1-10000)或采样下面多线程方式。服务器有效端口1-65535。

2024-07-09 14:34:29 328

原创 Qt调用Matlab(一)

MATLAB是MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。在本文利用Qt通过C/C++来访问Matlab功能。

2024-07-05 10:55:52 830

原创 Ubuntu20.04更新GLIBC到2.35版本

Ubuntu20.04默认GLIBC库版本是2.31.今天碰到一个软件需要2.35版本的GLIBC。需要升级到2.35版本。

2024-07-03 17:02:32 859

原创 Modbus RTU协议简介及CRC算法实现

Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用的连接方式。Modbus协议目前存在用于串口、以太网以及其他支持互联网协议的网络的版本。大多数Modbus设备通信通过串口EIA-485物理层进行。对于串行连接,存在两个变种,它们在数值数据表示不同和协议细节上略有不同。

2024-07-03 16:26:16 741

原创 Linux动态库查询路径设置(LD_LIBRARY_PATH)

Linux下动态库查询路径与Windows不同,即使动态库文件与可执行程序在相同目录下也是找不到的。请注意,修改系统级的动态库路径需要谨慎,因为这会影响到系统中所有使用动态链接器的程序。

2024-07-01 15:11:08 1138

原创 Linux CMakeLists编写之可执行程序

编译工具有很多(make/cmake/BJam)。cmake是跨平台,使用cmake编译需要编写CMakeLists.txt。本文编写CMakeLists.txt来生成C++可执行程序。

2024-07-01 14:45:57 405

原创 Linux CMakeLists编写之静态库

编译工具有很多(make/cmake/BJam)。cmake是跨平台,使用cmake编译需要编写CMakeLists.txt。本文编写CMakeLists.txt来生成C++静态库。

2024-06-27 14:38:37 388

原创 CPPTest设计分析

CppTest是一个可移植、功能强大但简单的单元测试框架,用于处理C++中的自动化测试。重点在于可用性和可扩展性。支持多种输出格式,并且可以轻松添加新的输出格式。CppTest下载地址Github地址下面对其设计进行分析,已更好对其使用。

2024-06-27 09:41:00 891

原创 为Ubuntu18.04云服务器修改用户shell

在Ubuntu18.04的云服务器,创建一个普通账户,登录进行发现使用shell是sh而不是bash,sh对终端命令支持很不好,将用户的shell修改为bash.

2024-06-26 11:12:54 320

原创 CppTest单元测试框架(更新)

中讲述利用宏ADD_SUITE将测试用例自动增加到测试框架中。但在使用中发现一个问题,就是通过宏ADD_SUITE增加多个测试Suite时,每次运行时都是所有测试Suite都运行,有的Suite运行比较慢,这对边写测试用例边编译运行时效率很低。于是就在原来测试框架下作出修改,即默认运行所有测试用例,不过可以通过命令指定测试用例来运行

2024-06-26 10:29:03 810

原创 C++并发之环形队列(ring,queue)

最近研究了C++11的并发编程的线程/互斥/锁/条件变量,利用互斥/锁/条件变量实现一个支持多线程并发的环形队列,队列大小通过模板参数传递。环形队列是一个模板类,有两个模块参数,参数1是元素类型,参数2是队列大小,默认是10。入队操作如果队列满阻塞,出队操作如果队列为空则阻塞。

2024-06-25 16:50:26 564

原创 C++并发之阻塞队列(block,queue)

最近研究了C++11的并发编程的线程/互斥/锁/条件变量,利用互斥/锁/条件变量实现一个支持多线程并发的阻塞队列,队列大小没有限制。阻塞队列是一个模板类,有两个模块参数,参数1是元素类型,参数2是容器类型,可以是std::deque和std::list,默认是std::deque。入队操作没有阻塞,出队操作如果队列为空则阻塞。

2024-06-25 16:34:27 510

原创 C++并发之协程实例(四)(通过迭代器访问生成器序列)

协程(Coroutines)是一个可以挂起执行以便稍后恢复的函数。协程是无堆栈的:它们通过返回到调用方来暂停执行,并且恢复执行所需的数据与堆栈分开存储。这允许异步执行的顺序代码(例如,在没有显式回调的情况下处理非阻塞I/O),还支持惰性计算无限序列上的算法和其他用途。

2024-06-24 17:09:36 201

翻译 我的C++20协程教程

  粗略地说,协程是可以相互调用但不共享堆栈的函数,因此可以在任何时候灵活地暂停执行以进入不同的协程。在C++的真正精神中,C++20协程被实现为一个埋在垃圾堆下面的漂亮的小金块,你必须费力才能访问到漂亮的部分。坦率地说,我对这个设计感到失望,因为最近的其他语言变化都做得更有品味,但遗憾的是,没有协同工作。进一步混淆协程的是,C++标准库实际上并没有提供访问协程所需的垃圾堆,所以你实际上必须滚动自己的垃圾,然后费力地浏览它。无论如何,无论如何,我会尽量把任何进一步的评论留到这篇博客文章的结尾…

2024-06-24 16:23:39 23

原创 C++并发之协程实例(三)(co_await)

协程(Coroutines)是一个可以挂起执行以便稍后恢复的函数。协程是无堆栈的:它们通过返回到调用方来暂停执行,并且恢复执行所需的数据与堆栈分开存储。这允许异步执行的顺序代码(例如,在没有显式回调的情况下处理非阻塞I/O),还支持惰性计算无限序列上的算法和其他用途。

2024-06-23 15:07:19 262

原创 C++并发之协程实例(二)(计算斐波那契序列)

协程是无堆栈的:它们通过返回到调用方来暂停执行,并且恢复执行所需的数据与堆栈分开存储。这允许异步执行的顺序代码(例如,在没有显式回调的情况下处理非阻塞I/O),还支持惰性计算无限序列上的算法和其他用途。斐波那契数列是一位意大利的数学家,他闲着没事去研究兔子繁殖的过程,研究着就发现,可以写成这么一个序列:1,1,2,3,5,8,13,21…也就是每个数等于它前两个数之和。那么给你第 n 个数,问 F (n) 是多少。用数学公式表示很简单: f(n) = f(n-1) + f(n-2)

2024-06-21 12:50:27 388

翻译 C++并发之协程(Coroutines,co_await,co_yield, co_return)

协程(Coroutines )是一个可以挂起执行以便稍后恢复的函数。协程是无堆栈的:它们通过返回到调用方来暂停执行,并且恢复执行所需的数据与堆栈分开存储。这允许异步执行的顺序代码(例如,在没有显式回调的情况下处理非阻塞I/O),还支持惰性计算无限序列上的算法和其他用途。

2024-06-20 10:39:58 145

原创 C++并发之协程实例(一)(coroutine, std::coroutine_handle, std::suspend_never, std::suspend_always)

协程(Coroutines)是一个可以挂起执行以便稍后恢复的函数。协程是无堆栈的:它们通过返回到调用方来暂停执行,并且恢复执行所需的数据与堆栈分开存储。这允许异步执行的顺序代码(例如,在没有显式回调的情况下处理非阻塞I/O),还支持惰性计算无限序列上的算法和其他用途。

2024-06-18 17:33:23 548

原创 多版本GCC安装及切换

最近在研究C++20中的协程需要安装GCC版本10。用到GCC多版本切换,记录步骤。

2024-06-18 15:18:31 431

原创 C++并发之原子操作(std::atomic)

原子类型是封装一个值的类型,该值的访问保证不会导致数据争用,并且可以用于同步不同线程之间的内存访问。这个头文件(atomic)声明了两个C++类,atomic和atomic_flag,它们在自包含类中实现原子类型的所有特性。头文件(atomic)还声明了一整套与C中的原子支持兼容的C样式类型和函数。

2024-06-17 16:12:45 908

原创 undefined reference to `__atomic_is_lock_free‘

看来标准库std::atomic的实现,除部分在头文件实现外,还有部分在库文件中实现。

2024-06-17 15:59:00 190

原创 C++并发之Future(std::future, std::promise, std::packaged_task, std::async)

Future允许异步访问特定提供程序设置的值的功能,这可能在不同的线程中。这些提供程序(providers)中的每一个(要么是promise对象,要么是package_task对象,要么调用async)都与Future对象共享对共享状态的访问:提供程序使共享状态就绪的点与Future对象访问共享状态的点同步。

2024-06-14 18:14:41 987

原创 C++并发之条件变量(std::condition_variable)

条件变量是一个能够阻塞调用线程直到被通知恢复的对象。当调用其中一个等待函数时,它使用unique_lock(通过互斥锁)来锁定线程。线程保持阻塞状态,直到被另一个调用同一condition_variable对象上的通知函数的线程唤醒。条件变量类型的对象总是使用unique_lock来等待.

2024-06-14 18:10:15 445

原创 C++并发之锁(std::lock_guard,std::unique_lock)

锁保护是通过使互斥对象始终处于锁定状态来管理互斥对象的对象。。在构造时,互斥对象被调用线程锁定,在析构时,互斥被解锁。它是最简单的锁,作为一个具有自动持续时间的对象特别有用,该对象会持续到其上下文结束。通过这种方式,它可以保证互斥对象在抛出异常时正确解锁。但请注意,lock_guard对象不会以任何方式管理互斥对象的生存期:互斥对象的持续时间应至少延长到锁定它的lock_guad被析构为止。唯一锁是一个在锁定和未锁定两种状态下管理具有唯一所有权的互斥对象的对象。

2024-06-12 18:18:54 1175

原创 C++并发之定时互斥(std::timed_mutex)

定时互斥是一种时间可锁定的对象,它设计用于在代码的关键部分需要独占访问时发出信号,就像常规互斥一样,但还支持定时尝试锁定请求。因此,timed_mutex有两个额外的成员:try_lock_for和try_lock_until。它保证是一个标准布局类。标准布局类型是一种具有简单线性数据结构和访问控制的类型,可以很容易地用于与用其他编程语言(如C)编写的代码进行通信.

2024-06-12 17:54:42 315

原创 单元测试之CppTest测试框架

基于testcpp测试框架,可以自动添加测试用例。

2024-06-05 18:29:30 783

原创 C++容器之概览

在C++标准库中容器是通过模板实现的数据结构,多数可以通过迭代器统一访问,如vector、list、deque、set、map等。

2024-06-05 16:56:07 946

原创 C++并发之互斥(std::mutex)

互斥锁是一个可锁定的对象,用于在代码的关键部分需要独占访问时发出信号,防止具有相同保护的其他线程同时执行并访问相同的内存位置。互斥对象提供独占所有权,不支持递归性(即,线程不应锁定其已经拥有的互斥对象)——请参阅recursive_mutex,以获取可以锁定的替代类。

2024-06-04 17:47:09 140

原创 C++并发之线程(std::thread)

类来表示执行的各个线程。执行线程是指可以在多线程环境中与其他此类序列同时执行的指令序列,同时共享相同的地址空间。初始化的线程对象表示执行的活动线程;这样的线程对象是可连接(joinable)的,并且具有唯一的线程id。默认构造(未初始化)的线程对象是不可连接的,其线程id对于所有不可连接线程都是通用的。如果移动赋值,或者对可连接线程调用join或detach,则可连接(joinable)线程将变为不可连接线程。

2024-06-04 15:47:31 428

原创 鸿蒙开发环境(DevEco Studio)安装配置

鸿蒙开发环境安装配置

2024-06-03 13:57:21 379

原创 为Ubuntu18.04云服务器创建sudo用户

昨天购买了一个Ubuntu18.04的云服务器,登录进去只有root账号,新建一账号james,用james账号登录后,提示没有james主目录,进入/home目录一看,还真没有。如上所示在/etc/sudoers文件找到如上所示代码行,将%sudo修改为james保存。重新登录james就可以使用sudo命令了(输入密码为james的用户密码)。上面输入密码是james的密码,看来james密码目前不是sudo密码。通过查资料发现需要修改/etc/sudoers可以设置sudo密码。

2024-06-03 10:06:21 385

原创 统计代码行数

作为程序员,你是如何统计自己所写代码行数呢?下面介绍两种统计方式。

2024-05-31 16:03:30 399

原创 C++容器之迭代器(iterator)

迭代器是指任何指向元素范围(如数组或容器)中某个元素的对象,该对象能够使用一组运算符(至少使用增量(++)和取消引用(*)运算符)在该范围的元素中进行迭代。迭代器最明显的形式是指针:指针可以指向数组中的元素,并可以使用增量运算符(++)对它们进行迭代。但是其他类型的迭代器也是可能的。例如,每个容器类型(如列表)都有一个特定的迭代器类型,用于遍历其元素。请注意,虽然指针是迭代器的一种形式,但并非所有迭代器都具有相同的指针功能;

2024-05-30 14:41:56 774

原创 C++容器之前向链表(std::forward_list)

前向列表是序列容器,允许在序列中的任何位置进行恒定时间的插入和擦除操作。前向列表被实现为单链表;单链表可以将它们所包含的每个元素存储在不同且不相关的存储位置。通过与序列中下一个元素的链接的每个元素的关联来保持排序。forward_list容器和list容器之间的主要设计区别在于,前者在内部只保留一个到下一个元素的链接,而后者为每个元素保留两个链接:一个指向下一个元件,一个指向前一个元件。这允许在两个方向上进行高效迭代,但每个元件消耗额外的存储空间,插入和删除元件的时间开销略高。

2024-05-30 14:37:11 842

原创 C++容器之队列(std::queue)

队列是一种容器适配器,专门设计用于在FIFO上下文(先进先出)中操作,其中元素被插入容器的一端并从另一端提取。队列被实现为容器适配器,容器适配器是使用特定容器类的封装对象作为其底层容器的类,提供一组特定的成员函数来访问其元素。元素被推入特定容器的“后部”,并从其“前部”弹出。底层容器可以是标准容器类模板或某些其他专门设计的容器类之一。empty 是否为空size 队列大小front 队首元素back 队尾元素push_back 入队pop_front 出队。

2024-05-29 09:28:52 158

原创 C++容器之链表(std::list)

列表是序列容器,允许在序列中的任何位置进行恒定时间的插入和擦除操作,以及双向迭代。列表容器被实现为双链表;双链接列表可以将它们所包含的每个元素存储在不同且不相关的存储位置。排序是通过与每个元素的关联在内部保持的,其中链接到它前面的元素,链接到它后面的元素。它们与forward_list非常相似:主要区别在于forward_liist对象是单链表,因此它们只能向前迭代,以换取更小、更高效。

2024-05-29 09:26:14 937

原创 C++容器之栈(std::stack)

堆栈是一种容器适配器,专门设计用于在后进先出(后进先出)环境中操作,其中元素仅从容器的一端插入和提取。堆栈被实现为容器适配器,容器适配器是使用特定容器类的封装对象作为其底层容器的类,提供一组特定的成员函数来访问其元素。元素是从特定容器的“后部”推/弹出的,即堆栈的顶部。底层容器可以是任何标准容器类模板或某些其他专门设计的容器类。empty 是否为空size 栈大小back 栈顶元素push_back 入栈pop_back 出栈。

2024-05-28 14:07:05 327

Python脚本扫描服务器端口

如果只知道服务器的地址,不知道其提供服务端口号,可以通过扫描所有端口方式发现服务器提供哪些端口。本Python脚本通过多线程扫描服务器端口。

2024-07-09

泰坦尼克号上乘客数据集

泰坦尼克号的沉没是历史上最臭名昭著的沉船之一。1912年4月15日,在她的处女航中,被广泛认为“不沉”的“泰坦尼克号”在与冰山相撞后沉没。不幸的是,船上的每个人都没有足够的救生艇,导致2224名乘客和船员中有1502人死亡。虽然生存中有一些运气因素,但似乎有些群体比其他群体更有可能生存下来。在这里,建立一个预测模型来回答这个问题:“什么样的人更有可能生存?”使用乘客数据(即姓名,年龄,性别,社会经济阶层等)。

2024-07-09

Xilinx Vitis 2020工程源目录修改

Xilinx Vitis可以做standalone程序开发,不过其工程中使用的路径为绝对路径。工程更换位置后编译将会显示错误。例如:源目录为D:/work,复制到同事电脑上放到C:/work(同事电脑只有一个C盘)。利用Vitis打开工程编译会有一堆错误,提示文件找不到。本脚本用来解决该问题。

2024-07-08

FFMPEG C++封装

FFMPEG是一个C语言开源视音频编解码库。本工程将FFMPG4.1.3进行C++封装,形成C++ FFMPG库。介绍参见:https://blog.csdn.net/flysnow010/article/details/137063852

2024-07-08

Qt调用Matlab实例

MATLAB是MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。在程序利用Qt通过C/C++来访问Matlab功能,调用Matlab代码:t=0:0.01:4*pi;y=sin(t);h=plot(t,y)绘制一正弦图。

2024-07-03

MODBUS-RTU协议CRC算法

Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用的连接方式。Modbus RTU是一种紧凑的,采用二进制表示数据的方式,RTU格式后续的命令/数据带有循环冗余校验的校验和。本资源就是MODBUS-RTU协议CRC算法实现。

2024-07-03

Matlab绘制时域和频域图

从文件文件中读取数据,对数据处理后绘制时域和频域图。

2024-06-27

百度翻译桌面端Windows

百度翻译桌面端 轻·快的多语种翻译工具 200+语种 极简模式 跨软件划词句 快捷键发起翻译 极简模式 悬浮微小输入框 随时翻译不打扰 快捷翻译 快捷键发起实时翻译 告别繁琐复制粘贴 划词翻译 划选词句即可翻译 外语阅读无障碍

2024-06-27

C++11标准库中多线程测试用例

C++11标准库中多线程测试用例.包括std::thread,std::mutex,std::lock_guard,std::unique_lock,std::condition_variable,std::future,std::promise,std::packaged_task,std::async,std::atomic.

2024-06-18

C++智能指针及容器测试用例

基于CppTest测试框架的C++智能指针及C++标准库容器测试用例,通过测试用例示范了智能指针和容器各接口用法。

2024-06-11

libssh的C++封装源码及单元测试用例

本工程基于Qt 5.12,是对libssh库C++封装,包括封装代码和单元测试代码,是很好学习libssh库的参考,也可直接拿来使用实现ssh的上下载文件及ssh交互。本库在本人的开源项目使用,项目地址:https://github.com/flysnow010/flyscp.

2024-05-17

在嵌入式开发中,经常会利用命令行交互系统测试功能,本文描述使用C++语言开发的一个命令行交互系统,支持命令注册(C或C++格式)

CommandManager 接口列表: - registerCommand 注册命令 - unregisterCommand 注销命令 - showCommand 显示单条命令信息 - showCommands 按组显示命令 - execCommand 执行命令 - returnValue 获取命令返回值 - run 运行命令行系统,通过默认命令exit退出

2024-05-09

开源单元测试库CppTest源码及测试程序

基于CppTest2.0.0版本,在Linux下直接make,不需要配置。

2024-04-26

Qt实现的Kermit协议源码

Kermit文件运输协议提供了一条从大型计算机下载文件到微机的途径。它已被用于进行公用数据传输。 Kermit文件运输协议是一个半双工的通信协议。 它支持7位ASCII字符。 数据以可多达96字节长度的可变长度的分组形式传输。 对每个被传送分组需要一个确认。 Kermit文件运输协议在每次会话中可以传送多个文件。 本资源利用Qt实现了Kermit协议,收发测试验证通过。

2024-03-28

Qt实现的XModem和YModem协议源码

XModem是一种在串口通信中广泛使用的异步文件传输协议,分为XModem和1k-XModem协议两种,前者使用128字节的数据块,后者使用1024字节即1k字节的数据块。Xmodem协议传输有接收程序和发送程序完成,先由接收程序发送协商字符,协商校验方式,协商通过之后发送程序就开始发送数据包,接收程序接收到完整的一个数据包之后按照协商的方式对数据包进行校验。校验通过之后发送确认字符,然后发送程序继续发送下一包;如果校验失败,则发送否认字符,发送程序重传此数据包。 YModem协议是XModem的改进协议,它最常用于调制解调器之间的文件传输的协议,具有快速,稳定传输的优点。它的传输速度比XModem快,这是由于它可以一次传输1024字节的信息块,同时它还支持传输多个文件,也就是常说的批文件传输。 本资源利用Qt实现了XModem和YModem协议,收发测试验证通过。

2024-03-28

FFMPEG C++封装库使用示例之初始化

该示例演示了FFMPEG C++封装库的初始化,并打印支持的: - 文件格式 - 编解码格式 - 协议格式 - 过滤器格式 - 像素格式 - 采样格式

2024-03-27

C++封装例程(class,struct,public,protected,private,friend)

C++封装(class,struct,public,protected,private,friend)的博客例程。 https://blog.csdn.net/flysnow010/article/details/136907034

2024-03-25

基于Qt5.12实现TFTP的Server和Client

TFTP协议是基于UDP的简单文件传输协议,协议双方为Client和Server.Client和Server之间通过5种消息来传输文件,消息前两个字节Code是消息类型,消息内容随消息类型不同而不同。传输模式有三种:octet,netascii和mail,octet为二进制模式,netascii为文本模式,mail为文本模式,不过收到的文本不是保存到文件,而是打印出来,现在已不常用。DATA消息种数据长度是512字节,最后一个数据包可能会小于512。 本资源基于Qt5.12实现TFTP的Server和Client。

2024-03-22

Qt实现Windows的SendTo菜单

本资源在Qt平台下利用Windows API实现Windows发送到(SendTo)菜单,并实现菜单项单击功能。

2024-03-15

Qt利用WindowsAPI弹出U盘

本程序实现动态检测磁盘插拔,并判断磁盘驱动器类型,可以将U盘弹出操作,将本地磁盘进行格式化操作。

2024-03-11

Qt显示桌面菜单,包括此电脑/库目录

利用Qt实现的桌面菜单,包括桌面,此电脑,库,网络,下载,控制面板,回收站等菜单项。实现用到Window Shell编程,通过Windows Shell返回菜单项和图标,显示通过QMenu将菜单项显示出来。在界面单击右键显示菜单,选择菜单项显示该项针对的右键菜单。

2024-03-06

Qt下显示文件及目录的Windows右键菜单

本资源是Qt工程,用来显示Windows下文件和文件夹的右键菜单。

2024-03-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除