gpt4 book ai didi

qt - QProcess 不适用于 "~"符号

转载 作者:行者123 更新时间:2023-12-04 18:36:47 24 4
gpt4 key购买 nike

我想使用 QProcess 来启动一个可执行文件,假设它位于主目录中。

以下代码有效:

    QProcess process;
QString cmd = qgetenv("HOME") + "/executableFile";
process.start(cmd);

但是,如果我使用“~”代表主目录,它将不起作用:
    QString cmd = "~/executableFile";

也许这是一个愚蠢的问题,但我真的很想知道为什么。
希望能得到您的帮助。谢谢!

最佳答案

~是由 shell 处理的特殊字符。

$ echo ~
/home/jbm

但是当你使用 QProcess 时,没有 shell 这样的东西来启动你的进程(只是一个环境,这是不一样的),因此“~”没有被处理,而是被视为一个字 rune 字,实际上是可执行文件路径的一部分。

关于qt - QProcess 不适用于 "~"符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33093301/

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