如何在qt中获取您的(此应用程序当前正在运行的)进程名称?
答案 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++
答案 3 :(得分:0)
使用arg的第一部分
QStringList args = QCoreApplication::instance()->arguments();
args.takeFirst();