Und schon wieder Schreibrechte ... :(

Antworten
AlterMann
Beiträge: 233
Registriert: So 13. Dez 2009, 09:43
OS, Lazarus, FPC: Lazarus 3.0 (rev lazarus_3_0) FPC 3.2.2 i386-win32-win32/win64
CPU-Target: x86 64Bit
Wohnort: Niederösterreich

Und schon wieder Schreibrechte ... :(

Beitrag von AlterMann »

Guten Morgen

Gerade hab ich eines meiner Programme auf einem neuen Win10 Pro installiert. (Läuft schon auf etlichen Windowsversionen (auch 10))

Die verschiedenen Forms schreiben ihre Einstellungen alle in eine gemeinsame *.xml Datei die ich auch brav mit

Code: Alles auswählen

 XMLPropStorage1.FileName := GetAppConfigDirUTF8(false) + XMLPropStorage1.FileName;
ins gemeinsame Anwendungsverzeichnis speichere.

Nur:
Wenn ich das Programm normal ausführe, ändert sich zwar der Zeitstempel der *.xml-Datei aber die Einstellungen sind beim nächsten Programmstart wieder verschwunden. (Sind auch nicht in der XML eingetragen)
Starte ich das Programm als Administrator gehts.

Hat da irgendwer eine Erklärung dafür?
Diese Faxen mit den verschiedenen Windows' hab ich langsam wirklich satt :(

Grüße
Christian
Früher war alles besser. Und aus Holz!

sstvmaster
Beiträge: 575
Registriert: Sa 22. Okt 2016, 23:12
OS, Lazarus, FPC: W10, L 2.2.6
CPU-Target: 32+64bit
Wohnort: Dresden

Re: Und schon wieder Schreibrechte ... :(

Beitrag von sstvmaster »

Also liegt dein Programm und die xml unter "c:\programme..."? Hier kann nur der Administrator schreiben.

Entweder du installierst dein Programm generell unter "c:\MeinProgramm" und hast keinen ärger mit den Rechten.
So macht das Lazarus auch und es gibt keine Probleme.
Oder du legst deine Einstellungen unter "c:\users\benutzername\AppData\Local oder Roaming" ab, so wie das mindestens seit windows Vista/7 sein soll.

LG Maik
LG Maik

Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: Und schon wieder Schreibrechte ... :(

Beitrag von wp_xyz »

sstvmaster hat geschrieben:
Mo 22. Mär 2021, 12:29
Oder du legst deine Einstellungen unter "c:\users\benutzername\AppData\Local oder Roaming" ab, so wie das mindestens seit windows Vista/7 sein soll.
Ich denke, wenn man GetAppConfigDir verwendet, dann wird gerade dorthin geschrieben.

Hast du Lazarus evtl. als Administrator installiert? Das wäre ein anderer Benutzer als der normale Benutzer, und das GetAppConfigDir verweist in der Verzeichnis des Administrators oder des normalen Benutzers, je nachdem.

Man muss nicht Administrator sein, um Lazarus zu installieren, solange die Installation in ein für ihn beschreibbares Verzeichnis erfolgt.

AlterMann
Beiträge: 233
Registriert: So 13. Dez 2009, 09:43
OS, Lazarus, FPC: Lazarus 3.0 (rev lazarus_3_0) FPC 3.2.2 i386-win32-win32/win64
CPU-Target: x86 64Bit
Wohnort: Niederösterreich

Re: Und schon wieder Schreibrechte ... :(

Beitrag von AlterMann »

sstvmaster hat geschrieben:
Mo 22. Mär 2021, 12:29
Also liegt dein Programm und die xml unter "c:\programme..."? Hier kann nur der Administrator schreiben.
Das Programm: Ja.
Die XML nicht, denn wie wp_xyz schon bemerkt hat, wird mit GetAppConfigDir automatisch das Verzeichnis C:\Users\User\AppData\Programmname\ verwendet (was ja auch funktioniert).

Nur unter diesem (einen) Windows10 speichert das Programm die Änderungen in der Konfiguration nur, wenn ich als Administrator ausführe (was aber dann wiederum bei jedem Programmstart zu einer Abfrage führt ...)
Außer ich setze das Level von Windows herunter, wann es nachfragen soll ... (was mich auch nicht besonders stört, nur muss ich das bei jeder Installation wieder manuell machen, und langsam wirds unübersichtlich)

wp_xyz: Die Lazarusinstallation ist auf einem ganz anderen Rechner, das hat m.E. nichts damit zu tun.
Früher war alles besser. Und aus Holz!

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Und schon wieder Schreibrechte ... :(

Beitrag von af0815 »

Grundlegend würde ich mir mal den Pfad beim Lesen oder Schreiben anzeigen lassen. Damit man sieht ob man am richtigen Pferd sitzt.

Ich verwende für sowas den LazLogger und schalte dann die Win32Gui in den Projekt-Einstellungen testweise ab. Dann sieht man die Meldungen vom LazLogger in der Konsole.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

sstvmaster
Beiträge: 575
Registriert: Sa 22. Okt 2016, 23:12
OS, Lazarus, FPC: W10, L 2.2.6
CPU-Target: 32+64bit
Wohnort: Dresden

Re: Und schon wieder Schreibrechte ... :(

Beitrag von sstvmaster »

AlterMann hat geschrieben:
Mo 22. Mär 2021, 13:56
sstvmaster hat geschrieben:
Mo 22. Mär 2021, 12:29
Also liegt dein Programm und die xml unter "c:\programme..."? Hier kann nur der Administrator schreiben.
Das Programm: Ja.
Die XML nicht, denn wie wp_xyz schon bemerkt hat, wird mit GetAppConfigDir automatisch das Verzeichnis C:\Users\User\AppData\Programmname\ verwendet (was ja auch funktioniert).
:oops: Mein Fehler, wer lesen kann...
AlterMann hat geschrieben:
Mo 22. Mär 2021, 13:56
Nur unter diesem (einen) Windows10 speichert das Programm die Änderungen in der Konfiguration nur, wenn ich als Administrator ausführe (was aber dann wiederum bei jedem Programmstart zu einer Abfrage führt ...)
Außer ich setze das Level von Windows herunter, wann es nachfragen soll ... (was mich auch nicht besonders stört, nur muss ich das bei jeder Installation wieder manuell machen, und langsam wirds unübersichtlich)
Das sieht eher nach einer verkorksten Windows Installation aus, normal ist nicht. Zumal es nur diese ein PC ist.
LG Maik

Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)

Antworten