Qt和VC++中获取当前应用程序全路径

在Qt中获取应用程序全路径非常简单,直接使用QCoreApplication::applicationDirPath()这个静态函数就OK了,

QString Global::exeDir()
{
    return QCoreApplication::applicationDirPath();
}

查看Qt官方帮助文档的描述就知道了:


QCoreApplication::applicationDirPath()

相比而言,Windows下的VC++提供的方法就有点麻烦了:

// 获取当前可执行程序的全路径
QString UVLightSetting::GetExeDir()
{
    // 获取当前可执行程序的全路径
    char    szExeFullPath[MAX_PATH] = { 0 };
    GetModuleFileName(NULL, szExeFullPath, MAX_PATH);

    std::string strExeFullPath = szExeFullPath;
    std::string strExeFilePath = strExeFullPath.substr(0, strExeFullPath.find_last_of("\\"));

    return Global::str2qstr(strExeFilePath);
}

推荐阅读更多精彩内容