问题标签 [qprocess]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
467 浏览

r - Qt4、QProcess、R:标准输出中的垃圾,行较长

我正在为 R 开发另一个 GUI 前端(主要是在或多或少相关材料上研究 Qt4),并且我偶然发现了所涉及组件的异常行为。如果我尝试通过 QProcess 向 R 的标准输入写入一行 76 个字符或更长的字符,则输出(命令的回声)返回时包含垃圾,并且该行的部分内容被重复。例如:

回显为

我尝试在 QByteArray 级别上使用输出,但异常已经存在。

我的 Qt 版本是 4.6.3,R v. 2.11.1,Debian Squeeze。相关代码片段如下:

这就是我开始 R 进程的方式:

这就是我将命令写入 R 进程的方式:

这就是我读取过程输出的方式:

从进程中读取发生在 readyRead() 信号上。

如果我的问题不符合本网站公认的标准,我提前道歉。谢谢你。

0 投票
2 回答
1089 浏览

qt - QIODevice 的管道输出到 QTextEdit

如何使QIODevice(特别是) 的输出实时QProcess进入 a ?QTextEdit

0 投票
4 回答
5570 浏览

c++ - 如何启动具有 root 权限的 QProcess?

我需要gphoto2从 Qt 程序启动。我这样做:

但它永远不会以这种方式进入Running状态,因为gphoto2通常需要在命令行上启动管理员权限。

我怎样才能QProcess以适当的权利开始gphoto2工作?

编辑:我希望用户不必输入密码,这意味着 gksudo、kdesudo 或任何其他图形解决方案对我来说不是一个有效的选项。

0 投票
2 回答
5691 浏览

python - 使用 PySerial 从串口读取二进制数据

PyQT 4.7 没有从 QIODevice 继承的允许直接与串口通信的类(例如 QSerialDevice)。因此,我认为使用 QProcess 类并从不同的进程实现对串行端口的实际读/写会更容易,该进程将使用 QProcess 接口与我的主 QT 应用程序接口。

现在的问题是,当我使用下面的代码时,发送和接收的字节数是不一样的。所以我的问题是如何正确地从串口读取二进制数据,然后将所有内容转发到标准输出?

这是我创建 QProcess 的主要 QT 程序的摘录:

这是将与串口通信的进程(comtalker.py;非阻塞部分尚未完成):

PS 这可能是问题出在其他地方,而不是在 PySerial 中。在另一台计算机上,我正在使用此命令“./binary_data_generator > /dev/ttyS0”写入 ttyS0。当我只发送 ASCII 字符(文本+数字)时,相同的代码似乎工作正常

0 投票
1 回答
2278 浏览

qt - QProcess:exitCode() 似乎没有返回 %errorlevel%

我试图从作为 QProcess 运行的 Windows 命令行应用程序中捕获特定的错误代码。

我今天遇到应用程序失败的错误:在命令行上运行时:echo %errorleve% 返回 14001 (ERROR_SXS_CANT_GEN_ACTCTX),这是正确的错误。

在我的 Qt 应用程序中,当我在调用此应用程序的 QProcess 上调用 exitCode() 时,我得到 0 作为返回值。

有没有办法获得这个过程的正确错误级别?我希望我错过了一些简单的东西。

前任:

0 投票
2 回答
679 浏览

c++ - 如何启动控制台进程

我正在从我的 Windows 应用程序运行一个进程,该进程是控制台 exe 文件。我正在使用以下代码:

但问题是控制台没有出现(没有打开)并且 procFinished() 将被调用并且控制台直到那时才会打开。

我应该怎么办?

0 投票
1 回答
569 浏览

qt - 松散的QProcess

我创建了两个程序 A 和 B。B 被设计为在 64 位 A 内启动的 32 位 QProcess。这些程序通过 stdin、stdout 和 QSharedMemory 很好地通信。

现在,如果 A 关闭,B 也将关闭。但是,如果我在 Windows 任务管理器中结束进程 A,B 将继续逍遥法外,B 的 cpu 使用率将飙升。为什么?

如果 A 立即被销毁,我该如何关闭 B?

0 投票
1 回答
1296 浏览

python - Pyside QProcess 需要帮助

注意:类 MyWindow(QWidget):

初始化

现在我有这个:

在进程执行完成之前,上面的代码不会显示任何内容。

现在我的问题是,有什么方法可以捕获 gcc 的输出并在 TextEdit 中显示它们,而不是等待进程完成?(cmd.exe 或终端的方式。它们在程序运行时显示输出)

谢谢

- 标记

0 投票
1 回答
1807 浏览

qt - 从 QProcess 启动 GUI 应用程序

我想使用 QProcess 启动 GUI 应用程序。

process.start() 立即返回而不显示 GUI 应用程序窗口。

我也试过 CONFIG += console 。它没有用。

0 投票
1 回答
556 浏览

c++ - q关闭写通道后处理写

我正在开始一个新的QProcess并将一些数据写入其中并关闭它以获得效果。它工作正常,但我需要写更多的数据。这不起作用,因为WriteChannel已经关闭。

如何解决问题?我可以以某种方式重新打开频道吗?