![]() |
Zugriffsrechte in AppData (Vista)
Hallo,
ich habe ein Programm entwickelt dass in Zeiten der paradisischen XP-Zustande einfach alle Benutzer-Dateien im Programme-Verzeichnis abgelegt hat, doch mit der Umstellung auf Vista musste diesem Treiben natürlich ein Ende gesetzt werden und alle Dateien kamen kurzum in einen neuen Ordner in AppData. War auch (wegen den Kompatibilitätsdateien) zunächst kein Problem, doch jetzt haben wir voll auf Vistakompatibilität umgestellt und eine Manifestdatei integriert, mit dem Ergebnis, das auf einmal alle Nicht-Admin-User keinen Schreibzugriff mehr auf die Datenbankdatei im AppData-Verzeichnis haben. Folglich wäre es sinnvoll, wenn das Programm unter einmaliger Anstrenung eines Admin-Accounts allen Benutzern Schreibrechte auf das Verzeichnis geben könnte. Ich habe dazu im Forum viel gesucht und auch einiges gefunden, jedoch nichts aus dem ich wirklich schlau geworden bin. Wäre toll wenn mir jemand mal einen Ansatz dazu sagen könnte. Viele Grüße Johannes |
Re: Zugriffsrechte in AppData (Vista)
Zitat:
Zitat:
|
Re: Zugriffsrechte in AppData (Vista)
AppData (C:\ProgramData) von allen Benutzern, weil unter allen Benutzern die gleichen Dateien, Aktivierungsinformationen etc vorhanden sein sollen.
|
Re: Zugriffsrechte in AppData (Vista)
Folgende Neuerungen: Ich hab herausgefunden, dass Vista in dem ProgramData Verzeichnis grundsätzlichen allen Benutzern Schreibrechte gibt, aber eine vom Admin(oder anderem Benutzer) erstellte Datei lässt sich nicht von jeden Standardbenutzer ändern. Dies ist aber gewünscht. Ich habe jetzt mal mit der NTACL-Unit herumgespielt, mit der kann ich ja immerhin Rechte für einen bestimmten User erteilen. Weiß jemand wie ich damit allen Standardenutzern Rechte gebe? Aufrufe wie
Delphi-Quellcode:
oder
FileACL.GrantAccessByName ('{Domäne}', 'Benutzer', DACL_MACRO_FILE_CHANGE, $3);
Delphi-Quellcode:
zeigen leider keine Wirkung (auch wenn Vista den Standardbenutzer ja als Domöne/Benutzer bezeichnet).
FileACL.GrantAccessByName ('{Domäne}', 'Domänen-Benutzer', DACL_MACRO_FILE_CHANGE, $3);
|
Re: Zugriffsrechte in AppData (Vista)
Ich verstehe garnicht was du genau machen willst!? Welchen Ordner willst du genau anpassen? Das gesamte AppData?
Du willst also, dass die Gruppe "Benutzer" Vollzugriff erhält? Würde ich nicht zwar nicht empfehlen und stattdessen nur bestimmte Benutzer hinzufügen, aber so geht's auch. Ich kann GrantAccessByName nicht empfehlen, da hier Benutzernamen und nicht SIDs verwendet werden - die sind sprachabhängig. ![]() btw: Kann dein Programm mehrfach gestartet werden unter verschiedenen Benutzern? |
Re: Zugriffsrechte in AppData (Vista)
Zitat:
|
Re: Zugriffsrechte in AppData (Vista)
Ja ich hab ja eingesehen dass meine am Anfang gewählte Lösung nich so das Wahre ist, und ich bin ja dabei das zu ändern.
Zum Thema Überschreiben: Das muss sogar so sein, da es eine zentrale Datenbankdatei ist, auf die mehrere User Zugriff haben sollen (aber nicht gleichzeitig). Ich will übrigens nicht allen Benutzern Vollzugriff, sondern nur allen Benutzern Schreibrechte geben. Ich habe das mit der JWSCL jetzt mal getestet, ich kann es auch compilern und ausführen, allerdings hat nachher "Jeder" laut Explorer "Spezialrechte" für das Verzeichnis, die nicht näher ausgeführt werden. Außerdem werden die Rechte nicht auf die drinnen liegenden Dateien vererbt (was notwendig ist). Kann mir da einer weiterhelfen? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:51 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz