How to get executable name in Qt

后端 未结 3 577
星月不相逢
星月不相逢 2021-02-06 22:02

I run a Qt application, what I want to know is this running binary file name.

相关标签:
3条回答
  • 2021-02-06 22:31

    I must (partially) disagree with the other comments that it is not a Qt question: There is a Qt method QCoreApplication::applicationFilePath() which gives the directory+filename of the executable.

    On Linux this will try to use /proc, and on Windows perhaps GetModuleFileName(). According to the docs it will fall back to argv[0].

    You could then use QFileInfo to split it into an executable name and a directory.

    QFileInfo(QCoreApplication::applicationFilePath()).fileName()
    
    0 讨论(0)
  • 2021-02-06 22:32

    The Qapplication parses the commandline arguemnts, the first entry is the name of the executable - this is roughly the same as argv[0] in standard C but has a few extra complexities on windows if you have a Unicode build or if the application is started as a service

    See http://doc.qt.io/qt-5/qcoreapplication.html#arguments

    0 讨论(0)
  • 2021-02-06 22:40

    Again not really a Qt question. To find the name of the binary file executed it would be something like.

    #include <iostream>
    using namespace std;
    int main(int argc, char **argv)
    {
      cout << argv[0] << endl;
      return 0;
    }
    
    0 讨论(0)
提交回复
热议问题