前言因为我是做的linux下开发,所以程序中需要多次在qt中调用linux命令行的命令,并且需要根据命令的执行结果做出相应的判断。qt中使用QProcess类实现进程间通信,也就是说QProcess可以调用外部程序并获取外部程序的信息。linux中通过启动bash(windows中启动cmd)来执行命令行的命令,并可以获取命令行的返回信息。 下面我详细介绍一下QProcess的具体用法和我踩过的坑
转载 2024-02-13 19:58:56
799阅读
看这里一、库的定义1.1 动态链接库1.2 静态链接库1.3 不同点二、前置准备三、使用静态链接库四、使用动态链接库五、小结六、参考 一、库的定义库分为动态链接库和静态链接库,作用相似但又有不同。1.1 动态链接库动态链接提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代码位于一个 DLL 文件中,该 DLL 包含一个或多个已被编译、链接并与使用它们的进程分开存储的函数。DL
第12章 输入与输出Qt提供了读写字节块的设备类QIODevice,QIODevice类是抽象的,无法被实例化,一般是使用它的子类。它包括如下子类: 其中,QProcess,QTcpSocket,QUdpSocket,QSslSocket都是顺序存取设备,这意味着所存储的数据从第一个字节开始到最后一个字节为止只能被读取一次。QFile,QTemporaryFile,QBuffer则是随机存取设备,
转载 2024-10-15 19:44:38
72阅读
        类似于360主窗口管理子程序的界面代码实现,代码采用qt编译,实现工具启动菜单,可界面配置,来自于事件查看器的服务界面,背景及界面风格待优化。一、服务、APP、文件管理功能设计        在win上,服务管理借用了 win API函数如Op
 QT QProcess -1- readAll()无法完整读取所有信息的问题 近来试了试QProcess这东西,遇到了一个目前无法解决的问题,现记录下来,备忘。 本想写了个小程序来对sdb进行操作,主要是无聊想给sdb换个界面,主要代码如下:QString CSdbView::SendCmdToSdb(QString string) { QString cm
转载 2023-12-02 22:33:56
54阅读
      qt默认的编程语言为C++语言。如果你用qt编译.c文件,会出现找不到C语言的默认头文件等错误(如:stdio.h等)。qt中不支持 extern "C"{}的这种写法,我前几天有一个C程序需要移植到Qt的工程中,本希望直接extern "C"就ok了,但发现qt4居然不支持这种写法。我的程序中用到了好几个linux系统头文件,是向串口发指令之类
##格式定义子程序的格式为sub 子程序名{ 表达式; }注意:子程序的定义是全局的如果定义的两个子程序是重名的,后面的子程序会覆盖先前的##调用子程序可以在表达式中使用子程序名来调用$marine; #打印 Hello! sub marine{ print "Hello!\n"; }在子程序的调用时,会看到有 marine 和 &marine 两种方式,区别在于:marin
正文基本上上一篇讲解了ffplayer的main函数的流程,主要讲解了编解码器以及触发器的注册。今天我们看下如何解码文件。开始结合源码分析。正文stream_open这个货用来开启四个线程,专门处理视频流的。我们如果想完全了解清楚,就一点点的看。static VideoState *stream_open(const char *filename, AVInputFormat *iformat)
转载 2024-07-23 13:42:15
140阅读
1. 进程间通信的方法1.TCP/IPQt Network提供了众多的类来实现网络编程。2.共享内存QSharedMemory是跨平台的共享内存类,提供了访问操作系统共享内存的实现。它允许多个线程和进程安全地访问共享内存片段。此外,QSystemSemaphore可用于控制系统的共享资源的访问以及进程间通信。3.D-BusD-Bus模块是一个Unix库,可以使用D-Bus协议来实现进程间通信。它将
转载 2024-07-15 09:12:25
81阅读
qt-C++笔记之QProcess声明在堆上和声明在栈上对进程执行是否异步的影响—— 2024-04-13 code review! 文章目录qt-C++笔记之QProcess声明在堆上和声明在栈上对进程执行是否异步的影响1.结论2.关于异步执行在堆上声明 `QProcess`在栈上声明 `QProcess`3.waitForFinished详解函数原型使用场景示例注意事项总结 1.结论选择在堆上
上节课,我们通过实现一个获取时间的系统服务,学习了 Cosmos 里如何建立一个系统服务接口。Cosmos 为应用程序提供服务的过程大致是这样的:应用程序先设置服务参数,然后通过 int 指令进入内核,由 Cosmos 内核运行相应的服务函数,最后为应用程序提供所需服务。这节课我们就来看看 Linux 内核是如何实现这一过程的,我们首先了解一下 Linux 内核有多少 API 接口,然后了解一下
转载 2024-10-01 12:50:58
85阅读
FTP是File Transport Protocol的简称,其作用是使连接到服务器上的客户可以在服务器和客户机间传输文件。除WWW服务外,FTP也算是使用最广泛的一种服务了。在cmd中ftp命令很多,常用的主要有:cmd中ftp命令1ftp 192.168.1.3登陆ftp2dir显示远程主机目录3cd remote-dir进入远程主机目录4help[cm
问题:参考了很多博主的帖子,想要实现多次调用python脚本都是对全局解释器锁GIL和线程的相关操作用类封装。会导致的程序崩溃问题,以及错误提示。总结一下要点:一、要将初始化python解释器单独提取出来在一个函数内部定义。void MainWindow::InitPy() { Py_Initialize(); if(!Py_IsInitialized()) {
转载 2024-08-31 19:31:58
176阅读
QProcess快速实现外部程序调用 1.QProcess类及接口介绍 QProcess类是Qt中专门用于启动一个外部程序进程并与主程序通信的。此类中包含多个静态函数和信号,可以方便地通过信号与槽机制实现信息互通。 我们要
转载 2020-04-06 13:21:00
1085阅读
2评论
QProcess 进程类—调用外部程序
原创 2021-08-11 15:22:35
1087阅读
# 使用QProcess调用Python脚本的步骤 ## 1. 简介 在Qt中使用QProcess调用Python脚本可以实现Qt与Python的无缝交互。QProcess类提供了一个接口,可以启动外部程序并与其交互。通过调用Python脚本,我们可以在Qt应用程序中使用Python的强大功能,实现更多复杂的功能。 ## 2. 流程 下面是整个使用QProcess调用Python脚本的流程:
原创 2023-09-30 06:02:05
2029阅读
# 调用QProcess执行Python脚本并获取输出结果 ## 引言 在开发过程中,我们经常需要与外部程序进行交互,而QProcess是Qt框架中提供的一个非常有用的类,用于启动外部进程并与之进行通信。本文将介绍如何使用QProcess调用Python脚本,并获取脚本的输出结果。 ## QProcess简介 QProcess是Qt框架中的一个类,用于启动外部程序或脚本,并与其进行交互。我们可
原创 2024-03-31 04:08:29
830阅读
文章目录1、进程(1)头文件(2)声明和创建(3)启动进程(4)如何获取进程运行时候的一些数据(5)判断进程的运行状态(6)关闭进程注意:(7)如果要给一个正在运行的进程发送数据2、线程QT线程有三种方式:1.继承QThread,重写run函数2.直接使用QThread + 自定义QObject派生类的方式3.用线程池 + 自定义QRunnable派生类的方式1.自定义一个继承于抽象类QRunn
QFileDialog前言QFIleDialog是用于打开和保存文件的标准对话框。QFileDialog类继承自QDialog类 QFileDialog在打开文件时使用可文件过滤器,用于显示指定扩展名的文件,也可以设置使用QFileDialog打开文件时的起始目录和指定扩展名的文件QFileDialog类中的常用方法方法描述getOpenFileName()返回用户所选择文件的名称,并打开该文件
       用Qt Creator编译后生成的可执行程序都是系统默认可执行程序的图标,很难看,如果想自己设置自定义图标该怎么做呢?       首先想到的就是看官方文档,Qt有比较完善的文档,而且检索和浏览的方式十分的简单,记得以前的QtSDK版本安装完成之后总是可以在开始菜单
  • 1
  • 2
  • 3
  • 4
  • 5