2017-12-19 3 views
0

Ich habe eine kleine Tool-Anwendung gemacht und es greift auf Settings.ini über QSettings. Die Ini-Datei habe ich im selben Verzeichnis wie die Anwendung selbst abgelegt. Aber wenn ich versuche, mit der Anwendung zu schreiben, scheint es blockiert zu sein, da kein Administratorzugriff besteht. Ich nehme an, der Ordner Programme (x86) ist Offlimits zu schreiben? Wie kann ich dieses Problem lösen?Settings.ini im gleichen Ordner wie die Anwendung ist Schreibschutz

Antwort

1

Sie raten richtig, es ist höchstwahrscheinlich ein Genehmigungsproblem. In der Regel werden Dateien mit Benutzereinstellungen in einen benutzerzugänglichen Ordner getrennt von der Anwendung selbst eingegeben, z. B. C:\Users\<Username>\AppData\Roaming\Company\Application.ini unter Windows.

Alles, was Sie wirklich brauchen eine INI-Einstellungsdatei für Ihre Anwendung zu ermöglichen, ist so etwas wie dieses (von QSettings docs):

QSettings settings("MySoft", "Star Runner"); 
QSettings::setDefaultFormat(QSettings::IniFormat); 

Unter Windows wird dies automatisch erstellen/Nutzung: C:\Users\<Username>\AppData\Roaming\MySoft\Star Runner.ini für alle zukünftigen QSettings Anrufe .

(Und funktioniert auch auf anderen Plattformen.)

+0

Danke für die Antwort. Ich werde das überprüfen, wenn ich nach Hause komme. – GeneCode

Verwandte Themen