Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Vollzugriff für den Nutzer (https://www.delphipraxis.net/135812-vollzugriff-fuer-den-nutzer.html)

tedbomi 18. Jun 2009 09:15


Vollzugriff für den Nutzer
 
Hallo Leute,

ich habe ein kleines Delphi-Programm geschrieben. Jetzt möchte ich es mit einem Setup (inno Setup) an andere weitergeben. Die Installation ist OK. Nun habe ich folgendes Problem:

Mein Setup legt einen C:\Programme/MeinOrdner an. In diesen Ordner wird u. a. eine INI-Datei kopiert, die beim Programmlauf verändert wird.
Genau das ist nicht möglich, mein Programm meldet Fehler. Meine Vermutung geht in Richtung Rechte.
Wenn ich manuell die Berechtigung für den Nutzer auf Vollzugriff ändere, kann ich Änderungen in meiner Datei vornehmen bzw. mein Programm funktioniert.

Meine Fragen:

1. Wie kann ich durch einen Code die Datei/Ordner auf Vollzugriff für den Nutzer ändern?
2. Kann ich beim Start meines Programms die aktuellen Zugriffrechte des Ordners oder der entsprechenden Datei feststellen?

Das Thema Rechte kommt in Eurem Forum häufig vor, aber auf Grund meines geringen Wissens erschließt sich für mich aus diesen Beträgen leider noch keine Lösung für mein Problem.

Ich würde mich über Hilfe freuen

TedBomi

mkinzler 18. Jun 2009 09:17

Re: Vollzugriff für den Nutzer
 
Besser ist es die Ini benutzerbezogen in dessen Profil abzulegen Hier im Forum suchenSpecial Folders

Phoenix 18. Jun 2009 09:59

Re: Vollzugriff für den Nutzer
 
Zu Deinen Fragen:
Am besten gar nicht.
Wenn ein Nutzer (irgendeiner) auf einem System Vollzugriff auf Deinen Programmorder hat, so kann irgend eine Schadsoftware z.B. Deine .exe gegen ein beliebiges Programm austauschen. Dieses könnte dann z.B. erst einen Keylogger starten und dann erst Dein Programm. Oder sonstigen schund treiben.

Es gibt gute Gründe dafür, warum ein Benutzer nicht in die Programm-Ordner schreiben darf, und in Hinblick auf die Sicherheit des Systems sollte man daher den richtigen Weg gehen, und solche Programmeinstellungen zum Beispiel im Ordner %AppData% ablegen. Hier darf geschrieben werden, und dieser Ordner ist dafür da, dass Applikationen dort z.B. ihre Einstellungsdateien ablegen.

tedbomi 18. Jun 2009 15:51

Re: Vollzugriff für den Nutzer
 
Hallo mkinzler und Phonix,

aufgrund Eurer Anregungen habe ich mich erneut in den Foren diesbezüglich umgesehen. Es gibt sehr ja unterschiedliche Ansichten, wo INI-Dateien gespeichert werden sollten. Es scheint ja direkt eine Philosophie zu sein.

Ich habe mich für die Variante: C:\Nutzer\name\AppData\Local entschieden.

Jetzt suche ich im Inno Setup nach einer entsprechenden Variable, die mir auch das gleiche Verzeichnis zurück gibt.

Also, noch mal besten Dank für die Anregungen

TedBomi

mkinzler 18. Jun 2009 15:53

Re: Vollzugriff für den Nutzer
 
Kannst du als Special Folder ( siehe oben auslesen)
CSIDL_LOCAL_APPDATA


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:22 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