AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Auf Schreibrechte unter Win 7 prüfen

Ein Thema von AlexII · begonnen am 7. Mär 2010 · letzter Beitrag vom 8. Mär 2010
Antwort Antwort
Seite 2 von 4     12 34      
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#11

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 19:38
Zitat von Luckie:
Wir haben uns doch darauf geeinigt, dass du das Update als Administrator machst. Und als Administrator hast du Schreibrechte in besagtem Ordner. Warum also jetzt noch mal diese Verrenkungen?
Ja das habe ich auch vor, aber bis ich einen Updater (getrennt von der Prog.exe) geschrieben habe dauert es ein paar Wochen, und bis dahin will ich das so machen - falls ich schreiben kann (z.B. in XP) führe ich das Updaten wie immer durch, und falls ich nicht schreiben kann, weise ich den User auf die Downloadpage. Also das ist erst mal eine Zwischenlösung.
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#12

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 19:41
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.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#13

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 19:43
Ne das keine elegante Lösung, wer weiß schon wie man sich als Admin anmelden soll, doch keine normaler User.
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#14

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 19:45
Und nicht zu wissen, ob Du im VirtualStore landest, erscheint Dir eleganter?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#15

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 19:51
Das will ich doch umgehen, deswegen Post #6
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#16

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 19:53
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.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#17

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 20:00
Ja genau... muss ich mal testen.

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;
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#18

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 20:26
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.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#19

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 20:28
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.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#20

Re: Auf Schreibrechte unter Win 7 prüfen

  Alt 7. Mär 2010, 20:33
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.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 4     12 34      


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 00:46 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