如何使用QStandardPaths获取“ProgramData”路径

时间:2015-10-13 08:15:19

标签: c++ windows qt

是否可以使用ProgramData在QT中获取QStandardPaths路径。

详细说明:

  1. 我想知道如何使用QStandardPaths类的函数获取ProgramData路径。
  2. 我想要跨平台解决方案,这就是我想使用QStandardPaths的原因。我相信QT提供了这样的解决方案,但我找不到它。
  3. 人们可能会问我为什么要这样,或者可能会建议使用ProgramData路径不好。首先,我打算复制我的应用程序的用户独立配置文件。我希望所有用户都能够访问该文件,仅用于阅读。我将在设置步骤中找到必要的文件。 (我们可以讨论这种情况,如果这不是一个好的方法)
  4. 我已经尝试过了:

    1. QStringList locations = QStandardPaths::locateAll(QStandardPaths::DataLocation, QString(), QStandardPaths::LocateDirectory);

    2. QStringList locations2 = QStandardPaths::standardLocations(QStandardPaths::DataLocation);

    3. 我尝试以管理员身份运行我的QT(看看问题是否是由于某些特权问题)而且没有任何改变

    4. 使用第1点和第2点的功能,我还尝试使用QStandardPaths::GenericDataLocation作为标准位置类型。实际上,我已尝试this链接中的所有类型,其解释中包含“ProgramData”

      最后,我得到的是:

      1.   

        C:/用户/ MYUSER /应用程序数据/ {本地|漫游}

      2.   

        /数据

      3. QString

1 个答案:

答案 0 :(得分:1)

这看起来像Qt中的一个错误,已在QTBUG-44348QTBUG-40565

中报告