与应用程序位于同一文件夹中的 Settings.ini 被写保护
Posted
技术标签:
【中文标题】与应用程序位于同一文件夹中的 Settings.ini 被写保护【英文标题】:Settings.ini in same folder as application is write protect 【发布时间】:2017-12-19 03:27:49 【问题描述】:我做了一个小工具应用程序,它通过 QSettings 访问 Settings.ini。我将 ini 文件放在与应用程序本身相同的目录中。但是当我尝试使用该应用程序对其进行写入时,由于没有管理员访问权限,它似乎被阻止了。我猜 Program Files (x86) 文件夹是禁止写入的?那么如何解决这个问题呢?
【问题讨论】:
【参考方案1】:你猜对了,很可能是权限问题。通常,用户设置文件位于与应用程序本身不同的用户可访问文件夹中,例如 Windows 上的 C:\Users\<Username>\AppData\Roaming\Company\Application.ini
。
您真正需要为您的应用程序启用 .ini 设置文件是这样的(来自QSettings docs):
QSettings settings("MySoft", "Star Runner");
QSettings::setDefaultFormat(QSettings::IniFormat);
在 Windows 上,这将自动创建/使用:C:\Users\<Username>\AppData\Roaming\MySoft\Star Runner.ini
用于所有未来的 QSettings
调用。
(也可以在其他平台上自动运行。)
【讨论】:
感谢您的回答。我回家后会检查这个。以上是关于与应用程序位于同一文件夹中的 Settings.ini 被写保护的主要内容,如果未能解决你的问题,请参考以下文章
vbscript 写入与xdoc位于同一文件夹中的xdoc同名的文本文件
如何使用 python 从位于同一目录中的多个 zip 文件夹中读取 csv 文件?