Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Schreibrechte prüfen und Windows 7 (https://www.delphipraxis.net/142672-schreibrechte-pruefen-und-windows-7-a.html)

Dragon27 1. Nov 2009 12:56


Schreibrechte prüfen und Windows 7
 
Hallo,

ich benutzte immer folgenden Code aus der Code-Library: Schreibrechte einer Datei.

Leider scheint dieser Code unter Windows 7 nicht mehr zu funktionieren, da ich immer false zurückgeliefert bekomme :-( ...

Auf bei der Abfrage für lesen etc. bekomme ich immer false, obwohl Leseberechtigungen bestehen.

Weiß jemand wie man trotzdem die Schreibberechtigungen überprüfen kann?

Danke!

Bernhard Geyer 1. Nov 2009 16:50

Re: Schreibrechte prüfen und Windows 7
 
Ich würde 0815 Dateiöffnen mit anforderung von Schreibfunktionalität durchführen. Kommt 'ne exception so geht es nicht, unabhängig davon ob nun NTFS-Rechte fehlen, Schreibrechte bei Netzwerklaufwerk fehlt, ein anderes Programm zugriff hat oder z.B. der Virenscanner blockiert. Aber bitte nicht vergessen mit erweiterten Vista-Manifest zu arbeiten damit die Dateisystem-Virtualisierung nicht zuschlägt.

Dragon27 1. Nov 2009 17:44

Re: Schreibrechte prüfen und Windows 7
 
Hallo,

danke für deine Antwort. Das mit dem Manifest hab ich aber leider nicht ganz verstanden.... Würde mich freuen wenn du mir das ein wenig erklären kannst.

Danke!

himitsu 1. Nov 2009 19:30

Re: Schreibrechte prüfen und Windows 7
 
Ganz einfach:
Es gibt sooooooo viele Gründe, warum man auf irgendwas keinen Zugriff bekommen kann ... alle Abfragen geht einfach nicht (abgesehn davon, daß wohl keiner alle möglichen Gründe kennt).

Also versuch einfach die gewünschte Datei zu öffnen.
- entweder es geht (du hast also alle möglichen Rechte)
- oder es geht nicht (irgendwas fehlt)

Bernhard Geyer 1. Nov 2009 19:50

Re: Schreibrechte prüfen und Windows 7
 
Und mit GetLastError bekommst du oft auch den Grund geliefert.

generic 1. Nov 2009 20:20

Re: Schreibrechte prüfen und Windows 7
 
Das Manifest signalisiert Windows Vista und höher, das diese nicht im Kompatibilitäts-Modus laufen.
Ohne Manifest kannst du überall auf die Platte schreiben. In Wirklichkeit wird nur der Schreibzugriff in dein Profil umgeleitet. Es sieht dann so aus, als ob die Datei da liegt wo sie hin sollte, liegt aber dann nur im Profil.

Das Manifest hat Microsoft eingeführt, weil Schreibzugriffe in der Windows NT Reihe unter c:\programme und c:\windows verboten sind (für User).
Da immer alle als Admin gearbeitet haben, ist das nur niemanden aufgefallen.
Dadurch sind viele Programme schlecht programmiert und schreiben auf die besagten Ordner.

Unter Vista hat man keine Rechte mehr.

Dragon27 6. Nov 2009 13:30

Re: Schreibrechte prüfen und Windows 7
 
Hallo,

nochmals recht herzlichen Dank für Eure Antworten.

Ich experimentiere jetzt schon ne ganze Zeit lang, komme aber nicht auf eine gute Lösung.

Ich habe die Datei(en) [es können bis 5000 sein] jetzt immer mit ner Stringliste geöffnet und etwas geschrieben, dann wieder gelöscht.
Leider ist das sehr langsam. Habt ihr da eine bessere Lösung?

Danke!

Luckie 6. Nov 2009 13:48

Re: Schreibrechte prüfen und Windows 7
 
Für eine neue Frage, erstelle bitte auch einen neuen Thread.

Dragon27 6. Nov 2009 13:52

Re: Schreibrechte prüfen und Windows 7
 
Hallo Luckie,

tut mir leid wenn das eine neue Frage ist. Meiner Meinung nach gehörte das zu Schreibrechte prüfen, da ich einfach nur nachgefragt habe, ob es möglich ist mir einen Tipp zu geben wie ich am einfachsten die Dateien "schreiben" lasse um die Schreibrechte zu überprüfen.

;-)

Luckie 6. Nov 2009 14:01

Re: Schreibrechte prüfen und Windows 7
 
Also wenn du meinst, dass es zusammengehört.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:23 Uhr.
Seite 1 von 2  1 2      

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