1

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

4

4 回答 4

7

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

于 2012-05-09T14:41:59.830 回答
5

如果您想获取可执行文件的名称(即通常保存在 中的字符串argv[0]),您可以通过读取QCoreApplication::arguments().

在 Unix 上,这仅在您Q(Core)Application正确初始化时才有效:

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

编辑:QCoreApplication::applicationFilePath()实际上,调用获取可执行文件的完整路径可能会更好。鉴于其完整路径,您可以使用QFileInfo::fileName().

于 2012-05-09T15:12:28.180 回答
3

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

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

Windows:检查GetCurrentProcessId()以及如何在 C++ 中获取进程名称

Linux如何在 linux 中获取当前进程名称?

于 2012-05-09T14:50:55.317 回答
0

使用 arg 第一部分

   QStringList args = QCoreApplication::instance()->arguments();
    args.takeFirst(); 
于 2019-06-12T21:52:23.560 回答