【问题标题】:QFile is not allowed to change permissions for the file [duplicate]不允许 QFile 更改文件的权限 [重复]
【发布时间】:2021-06-21 18:32:13
【问题描述】:

我创建 QFile 并像这样设置权限:

/*Reading information to file*/
file.setPermissions(QFile::ReadOwner | QFile::ReadOther | QFile::ReadGroup | QFile::WriteOwner | QFile::WriteOther | QFile::WriteGroup)
file.close()

然后我将此文件作为资源文件并将其连接到我的项目。但是像这样:

QFile file{ R"(:/text/TextInformation/Matters)" };
qDebug() << file.permissions() << '\n';

给我这样的输出:

QFlags(0x4|0x40|0x400|0x4000)

另一个问题:如果我现在尝试更改权限,我会失败。 在我的资源文件的属性中,我允许读取和写入它。我现在如何更改权限(或如何在 QFile::WriteOnly 模式下打开此文件)?

【问题讨论】:

  • 我们可以编写程序来设置文件的属性,但操作系统仍然可能不允许。有什么文件?顺便说一句,它是资源文件吗?那么它甚至不是操作系统文件。
  • 您不能修改资源 - 它是只读的。
  • @chehrlic。你能写下你的评论作为答案吗?谢谢
  • @AlexanderV,是的,谢谢

标签: c++ qt qfile


【解决方案1】:

修改编译成可执行文件的资源是不可能的——如果你想修改这样的文件,你必须把它写出文件系统并在那里修改。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 2012-04-28
    • 1970-01-01
    相关资源
    最近更新 更多