AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Probleme mit Schreibzugriff in %ProgramData% in Windows 11
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit Schreibzugriff in %ProgramData% in Windows 11

Ein Thema von AuronTLG · begonnen am 24. Mai 2022 · letzter Beitrag vom 24. Mai 2022
Antwort Antwort
AuronTLG

Registriert seit: 2. Mai 2018
Ort: Marburg
291 Beiträge
 
Delphi 12 Athens
 
#1

Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 10:31
Hallo,

ich verwende in einem Programm eine INI-Datei, die in einem eigenen Unterverzeichnis in den ProgramData liegt.
Diese wird für verschiedene Zwecke beschrieben und gelesen.
Zugriffsrechte waren bisher überhaupt kein Problem, doch jetzt habe ich festgestellt, dass auf verschiedenen Rechnern mit Windows 11 dort nicht mehr reingeschrieben werden kann.
Ich bin noch am suchen, was genau die Ursache dafür ist, da es auf vielen Rechnern problemlos geht, und habe auch mal das Netz durchsucht, aber nichts Konkretes gefunden.

Deswegen wollte ich auch hier mal nachfragen, ob irgendwer hier die ProgramData in ähnlicher Weise verwendet und damit Probleme festgestellt, oder einfach generell was dazu weiß.
  Mit Zitat antworten Zitat
Poelser

Registriert seit: 21. Apr 2008
Ort: Europa
145 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 10:41
ich verwende in einem Programm eine INI-Datei, die in einem eigenen Unterverzeichnis in den ProgramData liegt.
Diese wird für verschiedene Zwecke beschrieben und gelesen.
Mache ich genauso, und zusätzlich schreibe ich dort auch ggf. den Bugreport von MadExcept, wenn denn mal einer auftritt . Aber irgendwelche Probleme mit Schreibrechten dort sind mir noch keine untergekommen. Allerdings könnte die geringe Verbreitung von Win11 das bisher verhindert haben .
LG aus dem hohen Norden, Edmund
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

AW: Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 11:25
Wenn ich grundsätzlich in ProgramData und Unterverzeichnisse reinseh,
dann haben "Benutzer" nur Leserechte und "Administratoren" auch noch Schreibrechte. ("Gäste" dürfen garnichts)
"Ersteller" des Unterverzeichnisses und dessen Dateien haben zusätzlich noch "spezielle Berechtigungen". (sie hätten z.B. das Recht die Rechte dafür ändern zu dürfen und "Benutzern" das Speichern zu erlauben)

Fazit: Als "Benutzer" darfst du dort garnicht reinschreiben und das nicht erst seit Windows 11 (auch schon 7 und 10 ... WinNT).
Eventuell auch nicht als Admin, falls das Programm nicht Elevated ist, also durch UAC eingeschränkt, weil das Programm keine höheren Rechte angefordert hat ... könnte sein, dass mit Windows 11 dieser Teil nun "richtig" behandelt wird.

Du könntest also dein Programm mit passenden Rechten laufen lassen (nofalls auch nur kurzzeitig einen Thread oder SubProzess mit höheren Rechten, während des Schreibens),
oder die Rechte für dein Verzeichnis anpassen
oder du nimmst dir ein anderes Verzeichnis.



Mit einem Win32-Programm ohne Manifest, mit passendem SupportedOS-Eintrag (halbwegs aktuelle Delphis haben nun sowas drin), würde das Speichern in den VirtalStore umgeleitet.
$2B or not $2B

Geändert von himitsu (24. Mai 2022 um 11:37 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 11:29
Du musst dafür sorgen das der Ersteller das Verzeichnisses auch die Berechtigung für "Benutzer" setzt und ensprechend auch die Vererbung "korrigiert".

WEnn ein Admin das Verzeichnis erstellt hat, dann haben die "normalen User" keine Schreibrechte.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
AuronTLG

Registriert seit: 2. Mai 2018
Ort: Marburg
291 Beiträge
 
Delphi 12 Athens
 
#5

AW: Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 11:43
Zitat:
Du musst dafür sorgen das der Ersteller das Verzeichnisses auch die Berechtigung für "Benutzer" setzt und ensprechend auch die Vererbung "korrigiert".

Wenn ein Admin das Verzeichnis erstellt hat, dann haben die "normalen User" keine Schreibrechte.

Vielen Dank, das scheint es zu sein. Wenn das Programm beim ersten Ausführen mit Admin-Rechten gestartet wurde, wird der Ordner per ForceDirectories im ProgramData unter Admin-Schutz angelegt und sperrt sich dann gegen Änderungen.
Das würde auch perfekt erklären, warum das Problem scheinbar zufällig auf einigen Rechnern auftritt und auf anderen nicht. Es hängt einfach nur davon, ob der erste Aufruf als Admin war oder nicht.

Tjoa, dann kann ich mir jetzt wohl überlegen, wie ich mit dem existierenden Problem umgehe und wie ich es in Zukunft verhindere...
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#6

AW: Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 13:04
wie ich es in Zukunft verhindere...
Das Setup legt den Ordner (eventuell auch als Admin) an und setzt die Rechte gleich passend.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Raible

Registriert seit: 12. Mär 2012
30 Beiträge
 
#7

AW: Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 13:54
Wie setzt man den die Rechte im Setup korrekt.

Aktuell verwende ich InnoSetup mit dem Eintrag

[Dirs]
Name: {commonappdata}\Folder\Folder; Permissions: users-modify

es gibt aber wohl noch Probleme wenn das Setup mit einem anderen Benutzer
aufgerufen wurde als das installierte Programm.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#8

AW: Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 14:06
Damit das Setup die Rechte setzen kann, muss es natürlich auch das Recht haben, die Rechte zu setzen. Insofern sollte das Setup schon mit Adminrechten gestartet werden.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#9

AW: Probleme mit Schreibzugriff in %ProgramData% in Windows 11

  Alt 24. Mai 2022, 14:08
Wenn es das Setup (welcher Setup-Generator denn?) nicht kann, dann mach es einfach selber.
Befehle/Programme/BatchDateien wirst du doch vom Setup aus aufrufen können.

https://www.heimnetzwerk-und-wlan-hi...s-aendern.html
Bei Google suchencmd rechte setzen
...
$2B or not $2B
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz