【发布时间】:2015-09-02 15:23:29
【问题描述】:
我正在构建一个应用程序,它读取 URL 链接的文本文件以创建网站缩略图。
我想要的是能够使用 PHP 将 URL 插入到文本文件中,然后调用程序来读取链接并制作缩略图。
我可以在完成处理后关闭应用程序,然后在需要时简单地再次调用它,但我认为如果有很多请求,应用程序将不必要地启动/关闭。
如果我可以通过命令行参数控制应用程序会更好。我不确定这是否可能?
我正在尝试创建一个 while 循环来监听命令行输入
while(std::cin >> urlLink){
qDebug() << "test";
}
接下来我尝试在 .pro 文件中添加:“CONFIG += console”,但它没有显示任何命令行控制台。
我不知道如何完成我想做的事情。如果你们能帮帮我,我会很高兴的。
所以我的问题是:是否可以有一个通过命令行控制的 GUI 应用程序?我该怎么做呢? (在 Qt 中)
【问题讨论】:
-
命令行参数仅在应用程序启动时传递,您需要一些其他方式来通知应用程序重新读取文件。或者,您可以让应用程序监视文件并查找更改(例如,新的修改时间戳,或不同的文件大小,或使用您的平台本机文件监视接口)。
-
所以一个 PHP 程序不断地“馈送”你的程序。 a) 只是在其他程序正在读取文件时向文件中添加行是一个问题,忘记这一点。 b) 为什么你的程序需要 GUI?
-
但实际上,首先你真的应该检查是否值得将你的程序作为 daemon 运行,因为你需要整天不断的请求才能将你的应用程序变成一个守护进程。您希望程序在几天内每分钟调用几次,还是每天只调用几次?
-
@CantThinkOfAnything 正如 JoachimPileborg 已经说过的,命令行仅在程序启动时才相关。如果你想让某个东西一直运行,你就不能在它运行的时候使用它。但是...每 分钟 多次,只需从 PHP 为每个 URL 单独启动它(并将 URL 作为命令行参数传递,而不是为其创建文件)。
-
请记住,您需要计划保存结果的方式和位置,以便一个程序实例不会覆盖其他程序实例的结果。
标签: c++ qt command-line command-line-arguments