如何在qt中获取您的(这个,这个应用程序当前正在运行的)进程名称?
问问题
10687 次
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 回答