gpt4 book ai didi

c++ - 检测机器上是否安装了程序

转载 作者:太空狗 更新时间:2023-10-29 21:23:02 26 4
gpt4 key购买 nike

假设我有一个我编写的应用程序,它依赖于我机器上安装的外部应用程序(我们称之为“工具”)上的某些任务。在我的程序中,我用 system( "tool myarguments"); 调用它,效果很好。

现在,我想分发我的应用程序。当然,最终用户可能没有在他的机器上安装“工具”,所以我希望我的应用程序检查这个,并为用户打印一条消息。所以我的问题是:

是否有一种可移植的方法来检查机器上是否存在应用程序?(假设我们知道它的名称并且可以通过机器的 shell 访问它)。

附加信息:第一个想法是检查二进制文件是否存在,但是:

  • 这取决于平台,
  • 根据它的安装方式(从源代码构建、通过软件包安装等),它可能并不总是在同一个地方,尽管它可以通过本地路径访问。

我对这个问题的第一意见是“否”,但也许有人有想法?

引用:system()

相关:stackoverflow.com/questions/7045879

最佳答案

如果您使用 Qt 工具包,QProcess可能对你有帮助。

编辑:并寻找QProcess::error()返回值:如果它是 QProcess::FailedToStart ,那么要么没有安装,要么你没有足够的权限。

关于c++ - 检测机器上是否安装了程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19299708/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com