如何在qt中获取您的进程名称?

时间:2012-05-09 14:20:22

标签: c++ qt

如何在qt中获取您的(此应用程序当前正在运行的)进程名称?

4 个答案:

答案 0 :(得分:5)

我认为你正在寻找QCoreApplication::applicationPid()

答案 1 :(得分:5)

如果要获取可执行文件的名称(即通常保存在argv[0]中的字符串),可能通过阅读{{3}的第一个元素来获取该名称}。

在Unix上,这只适用于正确初始化Q(Core)Application的情况:

int main(int argc, char* argv[])
{
    QApplication app(argc, argv);
    //...
    return app.exec();
}

编辑:实际上,调用QCoreApplication::arguments()获取可执行文件的完整路径可能更好。鉴于其完整路径,您可以使用QCoreApplication::applicationFilePath()轻松获取可执行文件的名称。

答案 2 :(得分:2)

不幸的是,在Qt中没有这样的东西

您必须使用您正在使用的平台的本机API来检索此信息。

Windows :检查GetCurrentProcessId()How to get Process Name in C++

Linux How to get current process name in linux?

答案 3 :(得分:0)

使用arg的第一部分

   QStringList args = QCoreApplication::instance()->arguments();
    args.takeFirst();