如何在Qt中获取可执行文件名称

时间:2010-12-23 03:12:30

标签: qt

我运行Qt应用程序,我想知道的是这个正在运行的二进制文件名。

3 个答案:

答案 0 :(得分:90)

我必须(部分)不同意其他评论,这不是Qt问题:有一个Qt方法QCoreApplication::applicationFilePath(),它给出了可执行文件的目录+文件名。

在Linux上,这将尝试使用/proc,在Windows上可能会GetModuleFileName()。根据文档,它将回归argv[0]

然后,您可以使用QFileInfo将其拆分为可执行文件名和目录。

QFileInfo(QCoreApplication::applicationFilePath()).fileName()

答案 1 :(得分:3)

Qapplication解析命令行arguemnts,第一个条目是可执行文件的名称 - 这与标准C中的argv [0]大致相同,但如果您有Unicode构建或者如果应用程序作为服务启动

请参阅http://doc.qt.io/qt-5/qcoreapplication.html#arguments

答案 2 :(得分:-2)

再次不是Qt问题。要找到执行的二进制文件的名称,它将类似于。

#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
  cout << argv[0] << endl;
  return 0;
}