![]() |
Re: Auf Schreibrechte unter Win 7 prüfen
Zitat:
|
Re: Auf Schreibrechte unter Win 7 prüfen
Dann weise den Benutzer doch einfach per Messagebox o.ä. darauf hin, dass er für das Update Adminrechte braucht. Wenn er es trotzdem unter einem eingeschränkten Account durchführt, kannst Du nicht für die korrekte Funktion garantieren.
|
Re: Auf Schreibrechte unter Win 7 prüfen
Ne das keine elegante Lösung, wer weiß schon wie man sich als Admin anmelden soll, doch keine normaler User.
|
Re: Auf Schreibrechte unter Win 7 prüfen
Und nicht zu wissen, ob Du im VirtualStore landest, erscheint Dir eleganter?
|
Re: Auf Schreibrechte unter Win 7 prüfen
Das will ich doch umgehen, deswegen Post #6
|
Re: Auf Schreibrechte unter Win 7 prüfen
Meinst Du jetzt den Ordner, in dem Dein Programm liegt? Den bekommst Du mit ExtractFilePath(ParamStr(0)). Wenn Du versuchst, dort eine Datei anzulegen und bekommst einen Fehlercode 5, dann hast Du keine Rechte dazu.
|
Re: Auf Schreibrechte unter Win 7 prüfen
Ja genau... muss ich mal testen. :thumb:
Delphi-Quellcode:
ProgPath:=ExtractFilePath(ParamStr(0));
function KannIchSchreiben(const FileName: String): Boolean; var fileHandle: Integer; begin fileHandle := FileOpen(FileName, fmOpenWrite); result := (fileHandle >= 0); if result then begin FileClose(fileHandle); end; end; procedure TForm1.Button1Click(Sender: TObject); begin if KannIchSchreiben(ProgPath + '\' + 'test.txt') then showmessage('ja') else showmessage('nein'); end; |
Re: Auf Schreibrechte unter Win 7 prüfen
Unter Windows 7 kannst du sogar auf C: eine Datei erzeugen. Die landet dann auch im Virtualstore. Dies ist neu in Win7, denn in Vista gab es noch den 5er Fehler.
Bau dir ein Vista Manifest rein, dass womöglich auch noch Adminrechte einfordert. So wird der Virtualstore für deine Anwendung ausgeschaltet und Adminrechte gibt es über UAC dazu. Dein Code da oben, funkz sonst nicht. |
Re: Auf Schreibrechte unter Win 7 prüfen
Dumm nur, dass ein Updater in der eigentlichen Anwendung integriert ist. Das heißt seine Anwendung fordert bei jedem Start Administratorenrechte an. Auch nicht sehr toll.
|
Re: Auf Schreibrechte unter Win 7 prüfen
Nimm 2 Exes. Eine mit Vista-Manifest ohne Admin-Anforderung und eine mit Admin-Anforderung. Damit schaltest du in beiden fällen die Virtualisierung ab die eigentlich nur für veraltetet SW gedacht ist die noch vor Vista entwickelt wurde und munder Schreibrechte unter C:\Programme und C:\Windows vorrausgesetzt hat.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 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